ADB调试工具
adb在android端调试程序时非常好用,能定位到底是哪行代码导致的程序崩溃,常用的命令如下:
查看日志:
adb shell logcat | grep "f debug" -Ei
NDK调试工具:arm-linux-androideabi-addr2line
下载NDK:windows 版本ndk,版本号22
arm-linux-androideabi-addr2line看工具名称就知道是将内存地址转换成行号,具体点就是根据so库抛出的Error日志的中内存地址,找到具体是在那个文件的哪一行出现的该错误。
配置arm-linux-androideabi-addr2line环境变量,工具所在目录:ndk目录下的toolchains\arm-linux-androideabi-4.9\prebuilt\windows-x86_64\bin
命令格式:
arm-linux-androideabi-addr2line -e 需要调试的so库路径 内存地址
比如定位上图发生的这个错误:
内存地址为:00002c6f
arm-linux-androideabi-addr2line -e
F:\workspace\FFmpegDemo\app\build\intermediates\cmake\debug\obj\armeabi\libffmpeg-lib.so 00002c6f