android 放入主线程,android网络请求不能放在主线程
网络连接不能放在主线程
android 4.0 以上
网络连接不能放在主线程
4.0 以下 好像可以
在Android4.0以后,会发现,只要是写在主线程(就是Activity)中的HTTP请求,运行时都会报错,这是因为Android在4.0以后为了防止应用的ANR(aplication Not Response)异常,即使这里表达不是很清晰,大家应该都明白吧,哈哈
就针对此问题有两种解决的方法:
1.可以再Activity的onCreate()方法中加入这样一段代码,如下:
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());
}
后就可以在主线程中进行网络操作了
2.一般情况我们应该这样做
启动一条子线程进行你的网络请求。
当然,如果你的应用程序执行的网络请求数据量很小的话,可以使用第一种方案
android 放入主线程,android网络请求不能放在主线程相关推荐
- android网络请求不能放在主线程
网络连接不能放在主线程 android 4.0 以上 网络连接不能放在主线程 4.0 以下 好像可以 在Android4.0以后,会发现,只要是写在主线程(就是Activity)中的HTTP请求 ...
- Android 避免主线程执行网络请求之Activity/Fragment 结束后处理异步回调
大家都知道Android涉及到与UI相关的操作只能在主线程执行 android4.0以后就禁止在主线程进行网络请求了,在主线程里面执行Http请求都会报NetworkOnMainThreadExcep ...
- android搭建网络框架,Android 搭建MVP+Retrofit+RxJava网络请求框架(三)
上一篇中主要是将mvp+rxjava+retrofit进行了结合,本篇主要是对mvp框架的优化:建议先去看上一篇:Android 搭建MVP+Retrofit+RxJava网络请求框架(二) 针对vi ...
- Android Asynchronous Http Client-Android异步网络请求客户端接口
1.简介 Android中网络请求一般使用Apache HTTP Client或者采用HttpURLConnect,但是直接使用这两个类库需要写大量的代码才能完成网络post和get请求,而使用and ...
- android 请求方式有哪些,Android中的几种网络请求方式详解
Android应用经常会和服务器端交互,这就需要手机客户端发送网络请求,下面整理四种常用网络请求方式. java.net包中的HttpURLConnection类 Get方式: // Get方式请求 ...
- android界面之美---自定义网络请求进度加载对话框
1.定义进度对话框类 <span style="font-size:18px;">public class ProgressDialog {public Dialog ...
- Android 9.0以上HTTP网络请求被限制解决方案
问题 Android 9.0以上系统,HTTP网络访问请求被限制:但是HTTPS无影响. Android 10系统同样有此问题. 为保证访问安全,Android P以上要求网络请求必须为Https:H ...
- Android 页面或文件或网络请求时的加载动画
//加载图片或页面或网络请求时出现加载动画 public Class LoadingAnimation{ private static LoadingAnimation loadingAnimatio ...
- android+MVP+Retrofit+RxJava做网络请求
1.MVP+Retrofit+RxJava做网络请求2.GreenDao把第一页的数据缓存到数据库,列表实现上拉加载更多,下拉刷新功能 3.列表中的图片(img字段)使用Fresco进行加载 4.Re ...
最新文章
- FreeBSD控制台分辨率调整
- 操作系统 第四章【存储器管理】【MOOC答案】
- 【原理】解析一致性哈希算法
- EMOS1.3安装后的相关安全设置
- poi数据导入arcgis,结合POI数据的道路自动选取方法
- post如何获取到referrer_如何使用 ThinkJS 优雅的编写 RESTful API
- python训练手势分类器_从Scikit Learn中保存的训练分类器进行预测
- VS2013 Codejock 实现 MFC 换肤
- 程序员的mysql经典pdf_程序员的SQL金典 杨中科著 中文 PDF版
- springBean生命周期
- 对抗样本的创建和防御
- CAJ转Word有哪些既免费还不限制页数的转换工具?
- Windows Workflow Foundation中实现人工活动的demo,按照XPDL规范的实现
- 银联收单清算体系及处理流程
- Mybatis-There is no getter for property named 'tj' in 'class
- input框不允许输入负数
- R语言之基本统计分析
- Ubuntu 打开命令行终端窗口的几种方式
- 2021.2.25课程摘要(逻辑教育-王劲胜)
- [附源码]Nodejs计算机毕业设计校园快递代取平台Express(程序+LW)
热门文章
- Linux 测试端口的连通性的四种方法
- JDK1.8安装以及环境变量配置(win10)
- 路径规划之PRMRRT类算法分析
- Appium-Send SMS(发送短信)
- java backlog满_深入理解Linux TCP backlog
- Kaggle猫狗大战升级版VGG16处理
- python自动化-坐标定位方法offset_position_click()
- 垃圾信息转场移动应用 打击应与时俱进
- return; return 0; return -1; return 1之间的区别
- C语言 return 0 和return 1有什么区别