Android两种常见错误(ANR和FC)解决办法
ANR(Activity Not Respone)(无响应)
先介绍下Main线程(也称为UI线程、主线程)
功能: 1.创建UI控件
2.更新UI控件状态
3.事件处理
限制:Main线程不建议有超过5秒的事件
出现条件:
当用户输入事件5s内没有得到响应,将弹出ANR对话框
广播接收者的onReceive()执行时间超过10s
解决方案(原则):
所有可能的耗时操作都要在子线程()中执行
常见耗时操作:
I/O:网络操作
SDcard
数据运算
FC(Force close)
原因:
1.Error
OOM(out of memory error)
StackOverFlowError
2.RuntimeException
解决办法:
看日志
子线程不能更新UI的解决思路:
1、 将子线程执行结果发送到Main线程:handler+massage线程间通讯
发送消息:
Message msg = mHandler.obtainMessage(UPLOAD, json);
mHandler.sendMessage(msg);
接收消息:
public void handleMessage(Message msg) {
switch (msg.what) {
case UPLOAD:
mTextView2.setText((String) msg.obj);
break;
case DOWNLOAD:
mTextView.setText((String) msg.obj);
break;
default:
break;
转载于:https://blog.51cto.com/1206995290qq/1844257
Android两种常见错误(ANR和FC)解决办法相关推荐
- 计算机黑屏的原因及解决办法,导致电脑黑屏的两个常见的原因分析与解决办法_电脑故障...
导致电脑黑屏的两个常见的原因分析与解决办法_电脑故障 2017年04月21日 阅读 192 电脑黑屏故障的原因有很多种,有时很简单的一个差失就会导致,找到原因后才恍然大悟.下面就是一个电脑黑屏的案例分 ...
- PPTP连接时常见错误提示原因及解决办法
相信大家在连接PPTP的时候,总会出现这样那样的错误代码,很令人头疼,下面我为大家整理了一些常见的错误代码供参考: ×××错误619解决办法 详解:私设IP或路由器不支持ppTp pass throu ...
- vlookup匹配 匹配结果错误_vlookup函数的12种常见错误、原因及解决方法
vlookup函数是一个非常好用的查找函数,但由于种种原因,在实际使用时会遇到种种让人搞不明白的错误.于是本文就把常遇到的vlookup错误问题来一次大整理,希望能对同学们有用. 一.函数参数使用错误 ...
- android内存池,两种常见的内存管理方法:堆和内存池
描述 本文导读 在程序运行过程中,可能产生一些数据,例如,串口接收的数据,ADC采集的数据.若需将数据存储在内存中,以便进一步运算.处理,则应为其分配合适的内存空间,数据处理完毕后,再释放相应的内存空 ...
- 【机器学习】机器学习实践中的 7 种常见错误
编译:伯乐在线 - yixingqingkong,英文:Cheng-Tao Chu 编注:本文作者是 Codecademy 的分析主管 Cheng-Tao Chu,其专长是数据挖掘和机器学习,之前在 ...
- 一文带你掌握OBS的两种常见的鉴权方式
OBS提供了REST(Representational State Transfer)风格API,支持您通过HTTP/HTTPS请求调用.在调用OBS的API前,需要了解OBS的鉴权认证方式.本文就将 ...
- 机器学习实践中的 7 种常见错误
转载自:http://blog.jobbole.com/70684/ 编注:本文作者是 Codecademy 的分析主管 Cheng-Tao Chu,其专长是数据挖掘和机器学习,之前在 Google. ...
- ASP.NET Core MVC中的两种404错误
我们在使用某些系统的时候,如果访问了一个不存在的地址怎么办,比如http://52abp. com/airport/fly:或者访问的地址路由和操作方法虽然存在,但是地址参数id不存在,比如https ...
- vlookup匹配值不唯一_数据对比、数据查询匹配Vlookup函数3种常见错误及解决方案...
Excel中的Vlookup函数,在大家日常数据处理计算中应用的机会非常多,因为它可以帮助我们完成数据查询匹配.数据对比.但是这个函数在使用的过程中也经常会遇到查询错误的问题.根据实践经验总结,发现主 ...
最新文章
- 70页论文,图灵奖得主Yoshua Bengio一作:「生成流网络」拓展深度学习领域
- android 5.0 ios 8,iOS 8与Android 5.0大比拼:功能相同 体验不同
- Contiki OS 开发快速入门
- JZOJ 5281. 【NOIP提高组模拟A组8.15】钦点
- Python 常用系统模块整理
- STM32嵌入式系统FreeRTOS使用cJSON解析和构建JSON
- 让线程等待10秒_Java多线程-线程状态
- elipse下载及安装
- 投资起步晚5年,赶上需要1.5倍的汗水+时间
- Thinkpad R60 驱动下载及安装方法 for windows XP
- 收藏 | 史上最详细的 Landsat 1-9 系列数据集介绍~
- cat3 utp是不是网线_五类100对屏蔽双绞线UTPCAT3
- SAN光纤交换机常用命令整理(转)
- 工控系统 SCADA(监控和数据采集)系统简介
- 【C++】黑马程序员 C++学习课程—C++基础入门
- win10如何使用WinSAT测试体验指数
- 华为防火墙 相关命令
- Python爬取页游火线精英全区挑战排行榜
- 6-1 判断顺序表是否有序(Java语言描述)
- 数据库的登录密码忘记时,我们应该怎么办??
热门文章
- php静态分析工具window,window_SpeedPHP框架核心调试工具,在日常的编程开发当中,开发 - phpStudy...
- IDA——动态调试Linux上的ELF文件(整合他人博客)
- uva 10061——How many zero\'s and how many digits ?
- c++详解【new和delete】
- android文本复制自定义剪切板,android 剪切板-文本复制、粘贴
- IO多路转接模型----(select的模型,select的优缺点,poll的模型,poll的优缺点)
- Python—“helloworld”
- 1026 程序运行时间 (15 分
- wireshark源代码分析
- mmap父子进程间通信