Android Wear是否支持HttpURLConnection – 获取EOFException

我想知道我们是否可以通过Android Wear的HttpURLConnection访问网络?

我尝试在Wear代码中使用HttpURLConnection,我得到了EOFException.相同的代码适用于常规Android手机.它只在Android Wear上有问题.

如果Wear上不支持HttpURLConnection,我们应该使用Apache Http客户端还是其他什么?

或者我推出应用程序进行开发的方式可能不正确?

        URL url = new URL(myurl);
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setReadTimeout(10000 /* milliseconds */);
        conn.setConnectTimeout(15000 /* milliseconds */);
        conn.setRequestMethod("GET");
        conn.setDoInput(true);
        // Starts the query
        conn.connect(); 
        int response = conn.getResponseCode(); 

我确实将权限添加到了android清单中.我还从AsyncTask运行上面的代码.

EOFException发生在conn.getResponseCode().

java.io.EOFException
        at com.android.okhttp.internal.Util.readAsciiLine(Util.java:342)
        at com.android.okhttp.internal.http.RawHeaders.fromBytes(RawHeaders.java:311)
        at com.android.okhttp.internal.http.HttpTransport.readResponseHeaders(HttpTransport.java:135)
        at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:644)
        at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:353)
        at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:297)
        at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:509)

非常感谢您的帮助.

最佳答案
很不幸的是,不行.

Android Wear应用程序无法直接访问Internet.他们必须与相应的掌上电脑应用程序(通过MessageApiDataApi)进行通信,并请求它执行您需要的任何HTTP请求.

编辑:Android Wear 2.0,现在测试版,supports network requests,所以HttpURLConnection应该在那里工作.

转载注明原文:Android Wear是否支持HttpURLConnection – 获取EOFException - 代码日志