有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android。getInputStream()不断崩溃

我对Android、java和HTML都是新手。所以我几乎饱了。 我只是想用安卓应用程序从URL获取数据。 我在java中尝试了下面的代码,效果很好,所以我一直坚持到底是哪里出了问题。 我尝试了谷歌搜索,并使用了不同的选项,比如设置连接时间

    URL url = new URL("http://www.google.com/");
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setDoInput(true);
    conn.setDoOutput(true);
    try {
        input = new InputStreamReader(conn.getInputStream());
        in =new BufferedReader(input);
    }

我尝试了很多不同的版本,比如添加了一些东西,比如: urlConnection。setRequestProperty(“连接”、“保持活动”); urlConnection。setRequestProperty(“ConnectionTimeout”、“12000”); urlConnection。setRequestProperty(“内容长度”,“请求长度+请求长度”)

我认为下面的帖子也有类似的问题: IOException with URLConnection and getInputStream

我没有得到IOException(至少我不这么认为),但我得到了这个(还有一大堆其他的)

07-01 23:18:33.870:E/AndroidRuntime(30713):java。lang.IllegalStateException:无法执行活动的方法

是的,我确实添加了互联网和访问网络州的权限

    <uses-permission 安卓:name="安卓.permission.INTERNET" />
    <uses-permission 安卓:name = "安卓.permission.ACCESS_NETWORK_STATE"/>

我正在使用Eclipse并在我的Android HTC One X上运行。 请帮忙。提前谢谢

以下是我添加AsyncTask后的堆栈跟踪:

07-02 00:02:34.775: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.785: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.785: W/IInputConnectionWrapper(3799): getSelectedText on inactive InputConnection
07-02 00:02:34.785: W/IInputConnectionWrapper(3799): getTextAfterCursor on inactive InputConnection
07-02 00:02:34.790: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.795: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.795: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.795: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.800: W/IInputConnectionWrapper(3799): getSelectedText on inactive InputConnection
07-02 00:02:34.800: W/IInputConnectionWrapper(3799): getTextAfterCursor on inactive InputConnection
07-02 00:02:34.800: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.805: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.805: W/IInputConnectionWrapper(3799): getSelectedText on inactive InputConnection
07-02 00:02:34.810: W/IInputConnectionWrapper(3799): getTextAfterCursor on inactive InputConnection
07-02 00:02:34.810: W/IInputConnectionWrapper(3799): beginBatchEdit on inactive InputConnection
07-02 00:02:34.815: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.815: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.820: W/IInputConnectionWrapper(3799): getSelectedText on inactive InputConnection
07-02 00:02:34.820: W/IInputConnectionWrapper(3799): getTextAfterCursor on inactive InputConnection
07-02 00:02:34.830: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.830: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.830: W/IInputConnectionWrapper(3799): getSelectedText on inactive InputConnection
07-02 00:02:34.835: W/IInputConnectionWrapper(3799): getTextAfterCursor on inactive InputConnection
07-02 00:02:34.845: W/IInputConnectionWrapper(3799): endBatchEdit on inactive InputConnection
07-02 00:02:34.845: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.845: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.850: W/IInputConnectionWrapper(3799): getSelectedText on inactive InputConnection
07-02 00:02:34.850: W/IInputConnectionWrapper(3799): getTextAfterCursor on inactive InputConnection
07-02 00:02:34.855: W/IInputConnectionWrapper(3799): beginBatchEdit on inactive InputConnection
07-02 00:02:34.855: W/IInputConnectionWrapper(3799): setComposingRegion on inactive InputConnection
07-02 00:02:34.855: W/IInputConnectionWrapper(3799): endBatchEdit on inactive InputConnection
07-02 00:02:34.865: W/IInputConnectionWrapper(3799): getExtractedText on inactive InputConnection
07-02 00:02:34.865: W/IInputConnectionWrapper(3799): getTextBeforeCursor on inactive InputConnection
07-02 00:02:34.870: W/IInputConnectionWrapper(3799): getSelectedText on inactive InputConnection
07-02 00:02:34.870: W/IInputConnectionWrapper(3799): getTextAfterCursor on inactive InputConnection
07-02 00:05:06.105: W/LoadedApk(5867): pakageInfo is null! try again
07-02 00:05:06.105: W/LoadedApk(5867): packageInfo still null!
07-02 00:05:06.110: D/LoadedApk(5867): dalvik.system.VMStack.getThreadStackTrace(Native Method)
07-02 00:05:06.110: D/LoadedApk(5867): java.lang.Thread.getStackTrace(Thread.java:599)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.app.LoadedApk.initializeJavaContextClassLoader(LoadedApk.java:388)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.app.LoadedApk.getClassLoader(LoadedApk.java:330)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.app.LoadedApk.makeApplication(LoadedApk.java:535)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.app.ActivityThread.handleBindApplication(ActivityThread.java:4803)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.app.ActivityThread.access$1300(ActivityThread.java:151)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.app.ActivityThread$H.handleMessage(ActivityThread.java:1401)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.os.Handler.dispatchMessage(Handler.java:99)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.os.Looper.loop(Looper.java:155)
07-02 00:05:06.110: D/LoadedApk(5867): 安卓.app.ActivityThread.main(ActivityThread.java:5493)
07-02 00:05:06.110: D/LoadedApk(5867): java.lang.reflect.Method.invokeNative(Native Method)
07-02 00:05:06.110: D/LoadedApk(5867): java.lang.reflect.Method.invoke(Method.java:511)
07-02 00:05:06.110: D/LoadedApk(5867): com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
07-02 00:05:06.110: D/LoadedApk(5867): com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:795)
07-02 00:05:06.110: D/LoadedApk(5867): dalvik.system.NativeStart.main(Native Method)
07-02 00:05:09.565: I/dalvikvm-heap(6053): Grow heap (frag case) to 5.448MB for 1705652-byte allocation
07-02 00:05:09.810: I/dalvikvm-heap(6053): Grow heap (frag case) to 8.340MB for 3034580-byte allocation
07-02 00:05:09.905: I/MediaPlayer(6053): setLPAflag() in
07-02 00:05:09.905: I/MediaPlayer(6053): mContext is null, can't getMirrorDisplayStatus!!!
07-02 00:05:09.905: I/MediaPlayer(6053): setLPAflag() out
07-02 00:05:09.910: W/MediaPlayer(6053): info/warning (1, 902)
07-02 00:05:09.915: D/MediaPlayer(6053): [DLNA]contentType = 902
07-02 00:05:09.915: D/MediaPlayer(6053): doStart() in
07-02 00:05:09.915: D/MediaPlayer(6053): getIntParameter = 902
07-02 00:05:10.190: D/MediaPlayer(6053): Mediaplayer receives message, message type: 200
07-02 00:05:10.190: I/MediaPlayer(6053): Info (1,902)
07-02 00:05:10.190: D/MediaPlayer(6053): Mediaplayer receives message, message type: 5
07-02 00:05:10.190: D/MediaPlayer(6053): Mediaplayer receives message, message type: 1
07-02 00:05:10.295: E/(6053): file /data/data/com.nvidia.NvCPLSvc/files/driverlist.txt: not found!
07-02 00:05:10.295: I/(6053): Attempting to load EGL implementation /system/lib//egl/libEGL_tegra_impl
07-02 00:05:10.485: I/(6053): Loaded EGL implementation /system/lib//egl/libEGL_tegra_impl
07-02 00:05:10.595: I/(6053): Loading GLESv2 implementation /system/lib//egl/libGLESv2_tegra_impl
07-02 00:05:11.080: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:11.140: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:11.430: I/dalvikvm-heap(6053): Grow heap (frag case) to 10.851MB for 2731536-byte allocation
07-02 00:05:11.830: I/MediaPlayer(6053): setLPAflag() in
07-02 00:05:11.830: I/MediaPlayer(6053): mContext is null, can't getMirrorDisplayStatus!!!
07-02 00:05:11.830: I/MediaPlayer(6053): setLPAflag() out
07-02 00:05:11.845: W/MediaPlayer(6053): info/warning (1, 902)
07-02 00:05:11.870: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:11.875: D/MediaPlayer(6053): Mediaplayer receives message, message type: 200
07-02 00:05:11.875: I/MediaPlayer(6053): Info (1,902)
07-02 00:05:11.875: D/MediaPlayer(6053): Mediaplayer receives message, message type: 5
07-02 00:05:11.875: D/MediaPlayer(6053): Mediaplayer receives message, message type: 1
07-02 00:05:12.025: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:12.600: D/MediaPlayer(6053): [DLNA]contentType = 902
07-02 00:05:12.600: D/MediaPlayer(6053): doStart() in
07-02 00:05:12.600: D/MediaPlayer(6053): getIntParameter = 902
07-02 00:05:12.645: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:12.940: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:12.945: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:12.950: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:12.955: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:12.960: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:12.965: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:12.980: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:12.980: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:12.985: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:12.985: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:12.995: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:13.000: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:13.000: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:13.005: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:13.005: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:13.010: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:13.010: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:13.010: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:13.015: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:13.015: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:13.015: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:13.015: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:13.015: W/IInputConnectionWrapper(6053): beginBatchEdit on inactive InputConnection
07-02 00:05:13.020: W/IInputConnectionWrapper(6053): endBatchEdit on inactive InputConnection
07-02 00:05:13.020: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:13.020: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:13.020: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:13.020: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:13.025: W/IInputConnectionWrapper(6053): beginBatchEdit on inactive InputConnection
07-02 00:05:13.025: W/IInputConnectionWrapper(6053): setComposingRegion on inactive InputConnection
07-02 00:05:13.025: W/IInputConnectionWrapper(6053): endBatchEdit on inactive InputConnection
07-02 00:05:13.025: W/IInputConnectionWrapper(6053): getExtractedText on inactive InputConnection
07-02 00:05:13.025: W/IInputConnectionWrapper(6053): getTextBeforeCursor on inactive InputConnection
07-02 00:05:13.025: W/IInputConnectionWrapper(6053): getSelectedText on inactive InputConnection
07-02 00:05:13.025: W/IInputConnectionWrapper(6053): getTextAfterCursor on inactive InputConnection
07-02 00:05:13.165: E/SpannableStringBuilder(6053): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
07-02 00:05:13.165: E/SpannableStringBuilder(6053): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
07-02 00:05:13.295: D/MediaPlayer(6053): Mediaplayer receives message, message type: 2
07-02 00:05:16.440: W/System.err(6053): java.io.FileNotFoundException: http://www.google.com/
07-02 00:05:16.445: W/System.err(6053):     at libcore.net.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:177)
07-02 00:05:16.445: W/System.err(6053):     at aiti.mit.edu.sa.wu.calculator.MyAsynTask.doInBackground(ActivityHi.java:139)
07-02 00:05:16.445: W/System.err(6053):     at aiti.mit.edu.sa.wu.calculator.MyAsynTask.doInBackground(ActivityHi.java:1)
07-02 00:05:16.445: W/System.err(6053):     at 安卓.os.AsyncTask$2.call(AsyncTask.java:287)
07-02 00:05:16.445: W/System.err(6053):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
07-02 00:05:16.445: W/System.err(6053):     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
07-02 00:05:16.445: W/System.err(6053):     at 安卓.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
07-02 00:05:16.445: W/System.err(6053):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
07-02 00:05:16.450: W/System.err(6053):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
07-02 00:05:16.450: W/System.err(6053):     at java.lang.Thread.run(Thread.java:864)
07-02 00:05:16.450: W/dalvikvm(6053): threadid=12: thread exiting with uncaught exception (group=0x40c392d0)
07-02 00:05:16.460: E/AndroidRuntime(6053): FATAL EXCEPTION: AsyncTask #1
07-02 00:05:16.460: E/AndroidRuntime(6053): java.lang.RuntimeException: An error occured while executing doInBackground()
07-02 00:05:16.460: E/AndroidRuntime(6053):     at 安卓.os.AsyncTask$3.done(AsyncTask.java:299)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at 安卓.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.lang.Thread.run(Thread.java:864)
07-02 00:05:16.460: E/AndroidRuntime(6053): Caused by: java.lang.NullPointerException
07-02 00:05:16.460: E/AndroidRuntime(6053):     at aiti.mit.edu.sa.wu.calculator.MyAsynTask.doInBackground(ActivityHi.java:153)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at aiti.mit.edu.sa.wu.calculator.MyAsynTask.doInBackground(ActivityHi.java:1)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at 安卓.os.AsyncTask$2.call(AsyncTask.java:287)
07-02 00:05:16.460: E/AndroidRuntime(6053):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
07-02 00:05:16.460: E/AndroidRuntime(6053):     ... 5 more
07-02 00:05:19.770: D/Process(6053): killProcess, pid=6053
07-02 00:05:19.800: D/Process(6053): dalvik.system.VMStack.getThreadStackTrace(Native Method)
07-02 00:05:19.800: D/Process(6053): java.lang.Thread.getStackTrace(Thread.java:599)
07-02 00:05:19.800: D/Process(6053): 安卓.os.Process.killProcess(Process.java:944)
07-02 00:05:19.800: D/Process(6053): com.安卓.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:108)
07-02 00:05:19.800: D/Process(6053): java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
07-02 00:05:19.800: D/Process(6053): java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
07-02 00:05:20.290: I/dalvikvm-heap(6336): Grow heap (frag case) to 5.287MB for 1536016-byte allocation
07-02 00:05:20.375: I/dalvikvm-heap(6336): Grow heap (frag case) to 7.890MB for 2731536-byte allocation
07-02 00:05:20.590: I/MediaPlayer(6336): setLPAflag() in
07-02 00:05:20.590: I/MediaPlayer(6336): mContext is null, can't getMirrorDisplayStatus!!!
07-02 00:05:20.590: I/MediaPlayer(6336): setLPAflag() out
07-02 00:05:20.590: W/MediaPlayer(6336): info/warning (1, 902)
07-02 00:05:20.635: D/MediaPlayer(6336): Mediaplayer receives message, message type: 200
07-02 00:05:20.635: I/MediaPlayer(6336): Info (1,902)
07-02 00:05:20.635: D/MediaPlayer(6336): Mediaplayer receives message, message type: 5
07-02 00:05:20.635: D/MediaPlayer(6336): Mediaplayer receives message, message type: 1
07-02 00:05:20.685: E/(6336): file /data/data/com.nvidia.NvCPLSvc/files/driverlist.txt: not found!
07-02 00:05:20.685: I/(6336): Attempting to load EGL implementation /system/lib//egl/libEGL_tegra_impl
07-02 00:05:20.735: I/(6336): Loaded EGL implementation /system/lib//egl/libEGL_tegra_impl
07-02 00:05:20.820: I/(6336): Loading GLESv2 implementation /system/lib//egl/libGLESv2_tegra_impl
07-02 00:05:21.215: E/SpannableStringBuilder(6336): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
07-02 00:05:21.215: E/SpannableStringBuilder(6336): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
07-02 00:05:22.575: E/SpannableStringBuilder(6336): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
07-02 00:05:22.575: E/SpannableStringBuilder(6336): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length

这是我的坦克

protected String doInBackground(String... arg0) {

    try {
        URL url = new URL("http://www.google.com/");
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setDoInput(true);
        conn.setDoOutput(true);
        input = new InputStreamReader(conn.getInputStream());
        in =new BufferedReader(input);
        System.out.println("HELLO");
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    finally {
        conn.disconnect();
    }
    return null;
}

共 (3) 个答案

  1. # 1 楼答案

    你发布的任务让问题变得显而易见。对153进行评论只是在隐藏错误

    您正在try块(HttpURLConnection conn = (HttpURLConnection) url.openConnection();)中声明和分配conn,并在finally中断开连接

    但是从finally块中看不到您连接到的conn。这意味着您可能有一个同名的成员变量。你是想把它断开

    您将获得一个NullPointerException,因为该成员是null

    首先,我建议将conn更改为类似conn2的其他内容,以使问题更加明显(第153行将出现编译错误)

    正确的解决方案是将conn的声明和赋值移到try块之外,以便它对finally块可见,并根据需要重新调整catch块。比如(我还没有测试过这个):

    protected String doInBackground(String... arg0) {
    
        try {
            URL url = new URL("http://www.google.com/");
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            try {
                conn.setDoInput(true);
                conn.setDoOutput(true);
                input = new InputStreamReader(conn.getInputStream());
                in =new BufferedReader(input);
                System.out.println("HELLO");
            }
            finally {
                conn.disconnect();
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    
        return null;
    }
    
  2. # 2 楼答案

    如果你回头看看开发者。安卓com你可以让你的代码正常工作

    他们的样本如下:

       URL url = new URL("http://www.google.com/");
       HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
       try {
         InputStream in = new BufferedInputStream(urlConnection.getInputStream());
         readStream(in);
        finally {
         urlConnection.disconnect();
       }
    

    这和你的很相似,但是你发布的日志抱怨说

    07-02 00:05:16.440: W/System.err(6053): java.io.FileNotFoundException: http://www.google.com/
    

    这导致了空指针异常

    07-02 00:05:16.460: E/AndroidRuntime(6053): Caused by: java.lang.NullPointerException
    

    我猜是在这条线上

     conn.setDoInput(true);
    
  3. # 3 楼答案

    我认为你的问题是,你试图在主UI线程上这样做,你不能在ICS或Jellybean上这样做,你需要在AsyncTask内这样做,这样你应该很好