我想学习 twitter 连接示例。为此,我刚刚从这里下载了一个示例应用程序。我只是尝试运行该应用程序。当我在 Android 2.3.3 上运行这个应用程序时,它运行良好,但是当我在 android 4.1.2 上运行它时,它给出了一个错误NetworkOnMainThreadException
。在该代码中,作者使用AsynTask
后台线程执行网络操作,但仍然存在此错误。现在我很困惑,错误来自哪里。请帮忙。
问问题
1914 次
2 回答
4
这个问题有两个解决方案。
1)不要在 Main 中编写网络调用,为此UIThread
使用Async
Task 。
2)之后将以下代码写入您的MainActivity
文件setContentView(R.layout.activity_main);
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
并将下面的 import 语句放入您的 java 文件中。
import android.os.StrictMode;
于 2012-11-19T06:05:34.387 回答
1
您是否通过删除 android:targetSdkVersion="15"
Android Manifest 文件中的行进行检查。最初我也遇到了问题NetworkOnMainThreadException"并删除了我上面提到的行并检查了它。我在 4.0.2 中检查请在 4.1.2 中检查
希望这会帮助你。
于 2012-11-19T06:36:39.137 回答