美文网首页
Android程序异常分析

Android程序异常分析

作者: doubimonkey | 来源:发表于2016-09-21 14:21 被阅读0次

Android程序崩溃大家都应该遇到过,force close和ANR应该是大家遇到较多的。
这里把Android平台程序崩溃的各种类型做一个简述和原因列举。
1.ANR(可见ANR):
发生场景:应用发生ANR。
崩溃症状:系统弹出窗口询问用户选择“Force Close”或者“Wait”。
“Force Close”将杀掉发生ANR的应用进程。“Wait”将会等待系统择机恢复此应用进程。
发生原因:(1)应用主线程卡住,对其他请求响应超时。(2)死锁。(3)系统反应迟钝。(4)CPU负载过重。

2.Force Close:
发生场景:应用进程崩溃。
崩溃症状:系统弹出窗口提示用户某进程崩溃。
发生原因:空指针异常等未捕捉的异常。
但是现在MIUI等系统下,系统会帮你捕获异常,但是应用程序已经挂了,导致这种情况转变为ANR。

3.Tombstones:
发生场景:Native层崩溃
崩溃症状:如果发生崩溃的native层和UI有关联(比如Browser),我们可以在UI上发现这个崩溃。
如果发生崩溃的native层是在后台并且和UI没有直接联系,那么对于用户来说是不可见的,如果是debug版本可能会有Log打印出当时的底层现场。
发生原因:各种各样,需要具体情况具体分析。

4.系统服务崩溃(System Server Crash):
发生场景:系统服务是Android核心进程,此服务进程发生崩溃。
崩溃症状:手机重启到Android启动界面
发生原因:(1)系统服务看门狗发现异常。(2)系统服务发生未捕获异常。(3)OOM。(4)系统服务Native发生Tombstone。

5.Kernel Panics:
发生场景:Linux内核发生严重错误
崩溃症状:手机从bootloader开始完全重启
发生原因:(1)Linux内核内存空间发生内存崩溃。(2)内核看门狗发现异常。(3)空指针操作内核。

相关文章

  • Android程序异常分析

    Android程序崩溃大家都应该遇到过,force close和ANR应该是大家遇到较多的。这里把Android平...

  • Android NDK来发之旅24--C++--异常处理

    Android NDK开发之旅 目录 C++ 异常处理 异常是程序在执行期间产生的问题。C++ 异常是指在程序运行...

  • Android异常分析

    关于异常 异常? 异常就是一种程序中没有预料到的问题,既然是没有预料到的,就可能不在原有逻辑处理范围内,脱离了代码...

  • Android小知识点收集

    Android应用程序消息处理机制(Looper、Handler)分析 Android应用程序是通过消息来驱动的,...

  • Android OOM异常分析

    什么是OOM? OOM全称为OutOfMemoryError,解释为内存溢出,是Android开发中常见的一种错误...

  • Android物语:异常分析

    异常分类 Android是一个庞大而复杂的系统,涉及多种语言,所以其异常也很复杂。根据android系统架构层次,...

  • 17《Spring Boot 入门教程》异常处理

    1. 前言 程序中出现异常是普遍现象, Java 程序员想必早已习惯,根据控制台输出的异常信息,分析异常产生的原因...

  • android性能优化之Traceview的使用

    TraceView 是 Android 平台特有的数据采集和分析工具,它主要用于分析 Android 中应用程序的...

  • Monkey log异常分析说明

    Monkey log异常分析说明 以下主要针对在Android-Phone项目中进行Monkeylog进行分析和说...

  • Android Crash抓取处理

    一、Android Crash说明 程序因未捕获的异常而突然终止, 系统会调用处理程序的接口UncaughtExc...

网友评论

      本文标题:Android程序异常分析

      本文链接:https://www.haomeiwen.com/subject/ipjaettx.html