我正在制作一个使用互联网检索信息的应用程序.我得到一个,NetworkOnMainThreadException因为我试图在3.0及更高版本上运行它,因此尝试使用AsyncTask进行设置,但它仍然提供异常,我不知道有什么问题.奇怪的是,我在AsyncTask内部读取了这个线程Android NetworkOnMainThreadException,如果您只是android:targetSdkVersion="10"从清单文件中删除它,它将能够运行.这有效,但我不认为这是解决问题的正确方法.
所以,如果有人能告诉我我在AsyncTask中做错了什么,我将非常感激.此外,如果有人知道为什么删除清单中的语句使其工作,我也真的对此感兴趣.
我的代码如下所示:编辑:更新的代码.
public class MainActivity extends Activity {
static ArrayList<Tumblr> tumblrs;
ListView listView;
TextView footer;
int offset = 0;
ProgressDialog pDialog;
View v;
String responseBody = null;
HttpResponse r;
HttpEntity e;
String searchUrl;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
final ConnectivityManager conMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
final NetworkInfo activeNetwork = conMgr.getActiveNetworkInfo();
if (activeNetwork != null && activeNetwork.isConnected()) {
setContentView(R.layout.main);
try {
tumblrs = getTumblrs();
listView = (ListView) …Run Code Online (Sandbox Code Playgroud)