我的应用程序工作正常,直到我在android清单中放入以下行
<uses-sdk android:targetSdkVersion="14"/>
现在应用程序没有发出HTTP请求,因为我可以告诉b'coz应用程序没有登录。有什么我不知道的。
当我使用
时<uses-sdk android:targetSdkVersion="9"/> or <uses-sdk android:targetSdkVersion="7"/>
它有效。
答案 0 :(得分:2)
听起来你正在从UI线程进行HTTP调用,这不建议使用但是可以使用9的targetVersion,以后的版本强制要求HTTP请求是从UI线程以外的线程完成的,因此,当您将targetVersion更改为14时,此检查现在将被强制执行。您需要更新您的应用程序代码,以便从其他线程进行HTTP调用(checkout Loaders和/或AsyncTask以帮助解决此问题)
答案 1 :(得分:0)
我解决了这个问题。问题是异步任务从未进入doInBackground()
。问题是我正在使用webServiceTask.execute();
,但现在我将其更改为
(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
webServiceTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,"");
else
webServiceTask.execute("");
此后它开始工作了。