【小记录】android命令行程序发生coredump后读取堆栈信息
阅读原文时间:2023年07月10日阅读:1

一开始执行:

adb shell
cd /data/local/tmp
ulimit -c unlimited
./xxx

然后查看coredump文件信息:

adb pull /data/local/tmp/core ./
/Users/ahfu/code/android/android-ndk-r14b/prebuilt/darwin-x86_64/bin/gdb obj/local/arm64-v8a/test_xxx core
bt
#堆栈被完全损坏,什么有价值的信息都看不出来。

执行:

adb logcat | /Users/ahfu/code/android/android-ndk-r16b/ndk-stack -sym obj/local/arm64-v8a
# 一开始使用ndk 14r,  发现14r不支持64位二进制。换16r后解决。

然后启动 ./test_xxx 发生coredump后在另一个窗口看见了详细的coredump信息