android.os.NetworkOnMainThreadException异常

2021/4/26 18:55:28

本文主要是介绍android.os.NetworkOnMainThreadException异常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在调用网络接口时,出现异常

获取token失败! android.os.NetworkOnMainThreadException

在java程序中没有异常出现,但是安卓不行

这是因为安卓在4.0之后不允许在主线程进行网络连接,我们可以通过在oncreat()处添加

if (Build.VERSION.SDK_INT >= 11) {
            StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build());
            StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedClosableObjects().penaltyLog().penaltyDeath().build());
        }

来忽略异常,也可以通过子线程来进行网络通讯

参考:Android.os.NetworkOnMainThreadException异常的解决方式 - Nickeilf的个人空间 - OSCHINA - 中文开源技术交流社区

附:安卓开启子线程方法

Android常用的开启子线程的方法_任重道远-CSDN博客_android 子线程



这篇关于android.os.NetworkOnMainThreadException异常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程