Pat*_*ick 1 java android httpurlconnection ui-thread android-4.0-ice-cream-sandwich
我有这个奇怪的问题.我正在检索twitters,它可以在模拟器和我的三星Galaxy S上运行,但它在我的Galaxy Tab 10.1上不起作用?
手机和标签上都安装了相同的应用程序.从Eclipse生成所以没有调试或任何东西.
需要不同的权限?
这是代码:
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(searchUrl);
ResponseHandler<String> responseHandler = new BasicResponseHandler();
responseBody = client.execute(get, responseHandler);
Run Code Online (Sandbox Code Playgroud)
这是显而易见的:
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
Run Code Online (Sandbox Code Playgroud)
我发誓,这个问题每天都在StackOverflow上提出.:)
问题是您正在主UI线程上执行网络访问.NetworkAccessOnMainThread如果您尝试在主线程上执行HTTP请求,Android 3.0及更高版本将使您的应用程序崩溃(即系统将抛出异常).您需要将HTTP请求包装在AsyncTask(或Thread某些类型)中以确保不阻止UI线程.
阅读我关于这个主题的博文:
| 归档时间: |
|
| 查看次数: |
347 次 |
| 最近记录: |