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

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

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

- ::38.362     F DEBUG   : backtrace:

- ::38.363     F DEBUG   :     # pc 00014d9a  /data/app/com.cloudtv.xdogact-/lib/arm/liblocalser.so

- ::38.363     F DEBUG   :     # pc 0000d741  /data/app/com.cloudtv.xdogact-/lib/arm/liblocalser.so (_Z9WriteHeadR4CUrl+)

- ::38.363     F DEBUG   :     # pc 0000e895  /data/app/com.cloudtv.xdogact-/lib/arm/liblocalser.so (_Z6runSerRVb+)

- ::38.363     F DEBUG   :     # pc 0000a999  /data/app/com.cloudtv.xdogact-/lib/arm/liblocalser.so (_Z5DoSerPv+)

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

#!/bin/bash
dir=$(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/bin
addr=0000d741
arm-linux-androideabi-addr2line -e $dir/obj/local/armeabi-v7a/liblocalser.so $addr
aarch64-linux-android-addr2line -e $dir/obj/local/arm64-v8a/liblocalser.so $addr

最新文章

  1. Java中值传递和引用传递的概念
  2. LeetCode(93) Restore IP Addresses
  3. IIS7.5 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。=
  4. Spring MVC集成Tiles使用方法
  5. selenium自动化遇见Cannot find class in classpath问题
  6. java基础:模拟ATM取款机
  7. cve-2017-0199&metasploit复现过程
  8. AsyncLocal 与 async await
  9. BZOJ 5261 Rhyme
  10. TCC
  11. JavaScript HTML DOM - 改变 CSS
  12. JS模块化编程(二):require.js基本用法
  13. JavaScript学习笔记——错误处理
  14. Intel Edison学习笔记(二)—— 入门环境配置
  15. android中LayoutParams设置参数的理解
  16. Python 日志管理封装
  17. 6th Alpha阶段的postmortem报告
  18. 解决SDK未授权问题
  19. flink学习笔记-数据源(DataSource)
  20. clojure with postgres

热门文章

  1. 关于redis的几件小事(十)redis cluster模式
  2. Shell编程备份数据库
  3. signal,blinker:信号(看我脸色行事)
  4. Function HDU - 6546 (数学,贪心)
  5. 【转载】Stanford CoreNLP Typed Dependencies
  6. 清除zencart分类页多页后面的&disp_order &sort字符串的方法
  7. 防sql注入方法
  8. Linux排查问题工具汇总
  9. 【BZOJ1016】【Luogu P4208】 [JSOI2008]最小生成树计数 最小生成树,矩阵树定理
  10. 【Python数据分析】用户通话行为分析