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 子线程
标签:安卓,StrictMode,线程,android,os,NetworkOnMainThreadException 来源: https://www.cnblogs.com/Arisf/p/14705917.html