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)解决办法相关推荐

  1. 计算机黑屏的原因及解决办法,导致电脑黑屏的两个常见的原因分析与解决办法_电脑故障...

    导致电脑黑屏的两个常见的原因分析与解决办法_电脑故障 2017年04月21日 阅读 192 电脑黑屏故障的原因有很多种,有时很简单的一个差失就会导致,找到原因后才恍然大悟.下面就是一个电脑黑屏的案例分 ...

  2. PPTP连接时常见错误提示原因及解决办法

    相信大家在连接PPTP的时候,总会出现这样那样的错误代码,很令人头疼,下面我为大家整理了一些常见的错误代码供参考: ×××错误619解决办法 详解:私设IP或路由器不支持ppTp pass throu ...

  3. vlookup匹配 匹配结果错误_vlookup函数的12种常见错误、原因及解决方法

    vlookup函数是一个非常好用的查找函数,但由于种种原因,在实际使用时会遇到种种让人搞不明白的错误.于是本文就把常遇到的vlookup错误问题来一次大整理,希望能对同学们有用. 一.函数参数使用错误 ...

  4. android内存池,两种常见的内存管理方法:堆和内存池

    描述 本文导读 在程序运行过程中,可能产生一些数据,例如,串口接收的数据,ADC采集的数据.若需将数据存储在内存中,以便进一步运算.处理,则应为其分配合适的内存空间,数据处理完毕后,再释放相应的内存空 ...

  5. 【机器学习】机器学习实践中的 7 种常见错误

    编译:伯乐在线 - yixingqingkong,英文:Cheng-Tao Chu 编注:本文作者是 Codecademy 的分析主管 Cheng-Tao Chu,其专长是数据挖掘和机器学习,之前在 ...

  6. 一文带你掌握OBS的两种常见的鉴权方式

    OBS提供了REST(Representational State Transfer)风格API,支持您通过HTTP/HTTPS请求调用.在调用OBS的API前,需要了解OBS的鉴权认证方式.本文就将 ...

  7. 机器学习实践中的 7 种常见错误

    转载自:http://blog.jobbole.com/70684/ 编注:本文作者是 Codecademy 的分析主管 Cheng-Tao Chu,其专长是数据挖掘和机器学习,之前在 Google. ...

  8. ASP.NET Core MVC中的两种404错误

    我们在使用某些系统的时候,如果访问了一个不存在的地址怎么办,比如http://52abp. com/airport/fly:或者访问的地址路由和操作方法虽然存在,但是地址参数id不存在,比如https ...

  9. vlookup匹配值不唯一_数据对比、数据查询匹配Vlookup函数3种常见错误及解决方案...

    Excel中的Vlookup函数,在大家日常数据处理计算中应用的机会非常多,因为它可以帮助我们完成数据查询匹配.数据对比.但是这个函数在使用的过程中也经常会遇到查询错误的问题.根据实践经验总结,发现主 ...

最新文章

  1. 70页论文,图灵奖得主Yoshua Bengio一作:「生成流网络」拓展深度学习领域
  2. android 5.0 ios 8,iOS 8与Android 5.0大比拼:功能相同 体验不同
  3. Contiki OS 开发快速入门
  4. JZOJ 5281. 【NOIP提高组模拟A组8.15】钦点
  5. Python 常用系统模块整理
  6. STM32嵌入式系统FreeRTOS使用cJSON解析和构建JSON
  7. 让线程等待10秒_Java多线程-线程状态
  8. elipse下载及安装
  9. 投资起步晚5年,赶上需要1.5倍的汗水+时间
  10. Thinkpad R60 驱动下载及安装方法 for windows XP
  11. 收藏 | 史上最详细的 Landsat 1-9 系列数据集介绍~
  12. cat3 utp是不是网线_五类100对屏蔽双绞线UTPCAT3
  13. SAN光纤交换机常用命令整理(转)
  14. 工控系统 SCADA(监控和数据采集)系统简介
  15. 【C++】黑马程序员 C++学习课程—C++基础入门
  16. win10如何使用WinSAT测试体验指数
  17. 华为防火墙 相关命令
  18. Python爬取页游火线精英全区挑战排行榜
  19. 6-1 判断顺序表是否有序(Java语言描述)
  20. 数据库的登录密码忘记时,我们应该怎么办??

热门文章

  1. php静态分析工具window,window_SpeedPHP框架核心调试工具,在日常的编程开发当中,开发 - phpStudy...
  2. IDA——动态调试Linux上的ELF文件(整合他人博客)
  3. uva 10061——How many zero\'s and how many digits ?
  4. c++详解【new和delete】
  5. android文本复制自定义剪切板,android 剪切板-文本复制、粘贴
  6. IO多路转接模型----(select的模型,select的优缺点,poll的模型,poll的优缺点)
  7. Python—“helloworld”
  8. 1026 程序运行时间 (15 分
  9. wireshark源代码分析
  10. mmap父子进程间通信