Android常见问题debug


android.util.Log
常用的方法有以下5个:
Log.v()
Log.d()
Log.i()
Log.w()
Log.e()
根据首字母对应
VERBOSE
DEBUG
INFO
WARN
ERROR

另外,Log太多时用来过滤和标识分类log信息。


Java Crash
 Java Crash是我们最为常见的严重错误了,log中很容易可以找到其报错的地方通过其标注的位置开始检查代码。
ANR
 Application No Response 应用响应超时
Native Crash  
 一般是由Dalvik错误、状态监视调试器、C层代码以及libc的一些问题导致的。当系统发生Native Crash的时候,kernel首先会上报一个严重的警告信号(serious signal)
Memory Leak
 内存泄漏,一般会报java.lang.OutOfMemoryError
Kernel Panic
 内核发生不可恢复的错误,一般会重启


Java Crash

关键字: “Exception”(一般在main log) 有时在system log 中。


内存泄漏问题,搜索 java.lang.OutOfMemoryError


常见的严重错误有如下几类:
NullPointerException  :  空对象错误
IllegalStateException:非法状态,比如在View没有刷出来的时候去触摸。
IndexOutOfBoundsException
IllegalArgumentException
ExceptionInInitializerError
ClassCastException
RuntimeException
UnknownFormatConversionException
UnsupportContentTypeException
CursorIndexOutOfBoundsException
 发生 java crash 一般直接找 FATAL 关键字就可以定位问题了,log中有详细的文件名和行号。

ANR错误

关键字: “ANR  ”(system log)
ANR :Application Not Responding,即应用程序无响应。
ANR一般有三种类型:
KeyDispatchTimeout、(5 seconds)
BroadcastTimeout、(10 seconds)
ServiceTimeout。(20 seconds)

发生ANR后在systemlog中 搜“ANR”关键字
可以得到当前发生ANR的应用程序和最近时间内CPU使用率







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>