博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JNI崩溃调试
阅读量:5328 次
发布时间:2019-06-14

本文共 1195 字,大约阅读时间需要 3 分钟。

JNI崩溃了,系统日志会打印堆栈信息,所以第一步就是取日志

adb shell  logcat -v threadtime >>d:/log.txt

然后找到日志里面的关键字backtrace例如我的日志是这样的

12-04 06:14:38.362  3773  3773 F DEBUG   : backtrace:12-04 06:14:38.363  3773  3773 F DEBUG   :     #00 pc 00014d9a  /data/app/com.cloudtv.xdogact-1/lib/arm/liblocalser.so12-04 06:14:38.363  3773  3773 F DEBUG   :     #01 pc 0000d741  /data/app/com.cloudtv.xdogact-1/lib/arm/liblocalser.so (_Z9WriteHeadR4CUrl+472)12-04 06:14:38.363  3773  3773 F DEBUG   :     #02 pc 0000e895  /data/app/com.cloudtv.xdogact-1/lib/arm/liblocalser.so (_Z6runSerRVb+1176)12-04 06:14:38.363  3773  3773 F DEBUG   :     #03 pc 0000a999  /data/app/com.cloudtv.xdogact-1/lib/arm/liblocalser.so (_Z5DoSerPv+4)

现在想定位第三行,就是0000d741对应代码的位置,就只需要把代码填入下面的脚本进替换,然后执行就OK了

#!/bin/bashdir=$(pwd)export PATH=$PATH:/android-ndk-r11c/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin/export PATH=$PATH:/android-ndk-r11c/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/binaddr=0000d741arm-linux-androideabi-addr2line -e $dir/obj/local/armeabi-v7a/liblocalser.so $addraarch64-linux-android-addr2line -e $dir/obj/local/arm64-v8a/liblocalser.so $addr

 

转载于:https://www.cnblogs.com/yuandaozhe/p/10068930.html

你可能感兴趣的文章
kettle导数到user_用于left join_20160928
查看>>
activity 保存数据
查看>>
typescript深copy和浅copy
查看>>
linux下的静态库与动态库详解
查看>>
hbuilder调底层运用,多张图片上传
查看>>
深入理解基于selenium的二次开发
查看>>
较快的maven的settings.xml文件
查看>>
Git之初体验 持续更新
查看>>
随手练——HDU 5015 矩阵快速幂
查看>>
Maven之setting.xml配置文件详解
查看>>
SDK目录结构
查看>>
malloc() & free()
查看>>
HDU 2063 过山车
查看>>
高精度1--加法
查看>>
String比较
查看>>
Django之Models
查看>>
CSS 透明度级别 及 背景透明
查看>>
Linux 的 date 日期的使用
查看>>
PHP zip压缩文件及解压
查看>>
SOAP web service用AFNetWorking实现请求
查看>>