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 |