您的位置:首页 > 移动开发 > Android开发

Android NDK日志符号化 查找crash原因

2016-06-08 17:05 453 查看
例子:

1. 每次发布后,保留 frameworks\runtime-src\proj.android\obj\local\armeabi\lib***.so

   这个 so 是带调试信息的

2. logcat 抓到宕机的文件保存为 a.txt

3. ndk-stack -sym libcocos2dlua.so -dump a1.txt 可以查看宕机的数据

********** Crash dump: **********

Build fingerprint: 'samsung/t0ltezm/t0ltecmcc:4.2.2/JDQ39/N7108DZMUANL1:user/release-keys'

pid: 27149, tid: 27445, name: Thread-13953  >>> com.zzy.bigdevil <<<

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000020

Stack frame 08-11 18:59:30.372   194   194 I DEBUG   :     #00  pc 003362ca  /data/app-lib/com.zzy.bigdevil-

1/libcocos2dlua.so (cocostudio::Armature::init(std::string const&)+209)

Stack frame 08-11 18:59:30.372   194   194 I DEBUG   :     #01  pc 007bb7ff  /data/app-lib/com.zzy.bigdevil-

1/libcocos2dlua.so (__aeabi_uidivmod+6)

Crash dump is completed

4. arm-linux-androideabi-addr2line.exe 可以查看报错的行

C:\Users\zxujie>C:\android-ndk-r10d\toolchains\arm-linux-androideabi-4.8\prebuilt\windows-x86_64\bin\arm-linux-

androideabi-addr2line.exe -e libcocos2dlua.so -a 003362ca

0x003362ca

/Users/Shared/cocos_publish/bigdevil/program/frameworks/runtime-src/proj.android/../../cocos2d-x/cocos//editor-

support/cocostudio/CCArmature.cpp:142

查找闪退,保留几个版本的 proj.android\obj\local\armeabi\libcocos2dlua.so 是比较必要的

参考:
http://mp.weixin.qq.com/s?__biz=MjM5MzcwOTI3OA==&mid=211893108&idx=1&sn=cbabb8247fb3e2da91042e70e7d992b8&scene=1&srcid=06087AtLneMcQspEmOrJOXzf#rd

http://www.oschina.net/question/2241352_213433

http://qiang106.iteye.com/blog/1830416
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: