1.Android设备本地异常日志
adb shell /data/tombstones /data/anr /data/system/dropbox
ANR发生进程主线程堆栈信息
--------- beginning of system --------- beginning of events2.搜索ANR相关异常日志
"main" prio=
(1).查看UI线程,搜索main
main(2).快速搜索定位ANR日志
----- pid Cmd line: Cmd line: system_server
Cmd line:后边跟的是APP应用的包名,包名能对上就能定位成功异常日志
(3).Native发生异常
"main" prio=5 tid=1 Native3.搜索Crash相关异常日志
beginning of crash --------- beginning of crash
Fatal
am_anr5.搜索死锁阻塞日志
Subject: Subject: executing service Subject: Input dispatching timed out6.搜索CPU使用日志
CPU usage from7.通过aarch64-linux-android-addr2line命令解析符号地址
00000000005f29dc
(1).aarch64-linux-android-addr2line工具所在路径
H:Androidandroid-sdk-windowsndk21.1.6352462toolchainsaarch64-linux-android-4.9prebuiltwindows-x86_64bin H:Androidandroid-sdk-windowsndk21.1.6352462toolchainsarm-linux-androideabi-4.9prebuiltwindows-x86_64bin
(2).解析错误符号地址的命令
aarch64-linux-android-addr2line -C -f -e <对应带符号表的so库> <8位内存地址>
./aarch64-linux-android-addr2line -C -f -e /android_arm64/libNvStreamingSdkCoreSymbol.so 0005f29dc
注意:这里的so库是对应的带符号的so库才可以
8.抓取Android日志的常规方法
adb logcat -b all > logcat_all.txt (抓全部日志) adb logcat -s *:E > logcat_err.log (抓错误日志) adb logcat -s *:I (抓INFO或以上级别的日志) adb logcat | grep $(adb shell pidof xxx.xxx) (抓某一进程的log)
9.快速搜索定位空指针异常日志
null pointer dereference
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !