gpt4 book ai didi

java - android中的android os networkonmainthreadexception错误

转载 作者:行者123 更新时间:2023-11-30 04:00:29 27 4
gpt4 key购买 nike

我在尝试从 url 中提取 json 数据时收到错误“android.os.networkonmainthreadexception”。有人能告诉我为什么吗?

最佳答案

这是由于 StrictMode.ThreadPolicy。它从 API 级别 9 开始引入,默认线程策略从 API 级别 11 开始改变,简而言之,不允许网络操作(例如:HttpClient 和 HttpUrlConnection)在 UI 线程上执行。如果你这样做,你会得到 NetworkOnMainThreadException。

解决此问题的推荐方法是使用 AsyncTask,这样网络请求就不会阻塞 UI 线程。

您可以通过将以下代码添加到主 Activity 的 onCreate() 方法中来覆盖此线程策略。

if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy =
new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}

关于java - android中的android os networkonmainthreadexception错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12573452/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com