Android NDK备忘

Android NDK Crash 日志抓取及定位

NDK-STACK 定位 NDK Crash 位置

只要执行如下代码就行:

1
adb logcat | ndk-stack -sym /yourProjectPath/obj/local/armeabi-v7a

PS: 必须是带symbols的so,也就是在’\app\src\main\obj\local\下面的so’, 否则行号打印出来降是??.??

使用 arm-linux-androideabi-addr2line 定位 NDK Crash

1
#11 pc 00032493  /data/app/com.pic.livefilters-1/lib/arm/libhairUtils.so (detectHairByOpenCV+1930)

执行

1
arm-linux-androideabi-addr2line -e /yourProjectPath/src/main/obj/local/armeabi-v7a/libhairUtils.so 00032493

将pc地址转换为行号 aarch64-linux-android-addr2line工具地址

1
ndk-bundle/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin/aarch64-linux-android-addr2line
坚持原创技术分享,您的支持将鼓励我继续创作!