Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用URI类连接到网站时出错_Android_Android Intent_Android Emulator_Android Widget - Fatal编程技术网

Android 使用URI类连接到网站时出错

Android 使用URI类连接到网站时出错,android,android-intent,android-emulator,android-widget,Android,Android Intent,Android Emulator,Android Widget,我正在尝试连接下面的url。这很好,但执行后应用程序崩溃,有什么想法吗?Logcat抱怨第77行-connection=(HttpURLConnection)url.getContent()我从connection=(HttpURLConnection)url.openConnection()更改而来因为url未被执行。此代码在按钮onClick侦听器中执行。提前谢谢 URL url = null; try { url = new URL("http://apps.smilemachin

我正在尝试连接下面的url。这很好,但执行后应用程序崩溃,有什么想法吗?Logcat抱怨第77行-
connection=(HttpURLConnection)url.getContent()我从
connection=(HttpURLConnection)url.openConnection()更改而来因为url未被执行。此代码在按钮onClick侦听器中执行。提前谢谢

URL url = null;
try {
    url = new URL("http://apps.smilemachine.com/smilefactory/api/v1.0/speedup");
} catch (MalformedURLException e) {
    e.printStackTrace();
}
HttpURLConnection connection = null;
try {
    connection = (HttpURLConnection)url.getContent();
} catch (IOException e) {
    e.printStackTrace();
}
try {
    connection.setRequestMethod("GET");
} catch (ProtocolException e) {
    e.printStackTrace();
}
try {
    connection.connect();
} catch (IOException e) {
    e.printStackTrace();
}
日志cat输出:

11-2822:11:21.153:E/AndroidRuntime(2676):致命异常:主 11-28 22:11:21.153:E/AndroidRuntime(2676):java.lang.ClassCastException:java.util.zip.gzip输入流 11-28 22:11:21.153:E/AndroidRuntime(2676):在com.developer.machine.Screen1$1.onClick(Screen1.java:81) 11-28 22:11:21.153:E/AndroidRuntime(2676):在android.view.view.performClick(view.java:2485) 11-28 22:11:21.153:E/AndroidRuntime(2676):在android.view.view$PerformClick.run(view.java:9080) 11-28 22:11:21.153:E/AndroidRuntime(2676):在android.os.Handler.handleCallback(Handler.java:587)上 11-28 22:11:21.153:E/AndroidRuntime(2676):在android.os.Handler.dispatchMessage(Handler.java:92)上 11-28 22:11:21.153:E/AndroidRuntime(2676):在android.os.Looper.loop(Looper.java:123)上 11-28 22:11:21.153:E/AndroidRuntime(2676):位于android.app.ActivityThread.main(ActivityThread.java:3683) 11-28 22:11:21.153:E/AndroidRuntime(2676):位于java.lang.reflect.Method.Invokenactive(本机方法) 11-28 22:11:21.153:E/AndroidRuntime(2676):在java.lang.reflect.Method.invoke(Method.java:507) 11-28 22:11:21.153:E/AndroidRuntime(2676):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 11-28 22:11:21.153:E/AndroidRuntime(2676):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
11-28 22:11:21.153:E/AndroidRuntime(2676):在dalvik.system.NativeStart.main(本机方法)

您是从UI线程运行这个吗?另外,请发布Logcat输出。我已经发布了Logcat输出,我不太确定它在哪个线程上执行??将代码更改回
connection=(HttpURLConnection)url.openConnection()
并发布Logcat输出。或者,不要期望从
getContent()
获取
HttpURLConnection
,该方法实际上应该返回一个
InputStream
。确实,有一个很好的例子。只是确保不要在UI线程上执行这些东西。