andriod navive debug信息的跟踪方法

开发或测试过程中一直有遇到 native debug的情况,与java debug信息清楚的反应出调用的堆栈及对应的文件和函数相比,native debug的信息则只是列举了寄存器信息以及pc指针和so库,加之我们本身对linux不是很熟悉,不清楚对应的具体含义以及如何像elastos上进行反编译的方法,因此往往将信息丢弃。最近在解决一个类似的问题时候,无意中发现网上有人写了一个python脚本panic.py,反编译源码信息。具体操作如下:
  1.debug信息如下:

[转载][转] <wbr>andriod <wbr>navive <wbr>debug信息的跟踪方法

关于andriod navive debug信息的跟踪方法

 


2.将fault addr以下部分至堆栈so信息结束本分拷出,如下图:

[转载][转] <wbr>andriod <wbr>navive <wbr>debug信息的跟踪方法

关于andriod navive debug信息的跟踪方法


3.将拷贝出的信息存到一个文本文件中(如log.txt),并放在脚本panic.py对应的目录下,目前放在项目的script目录下。

4.命令行中执行以下命令: ./panic.py msm7627_surf log.txt 其中"./panic.py"对应的则是执行的脚本,"msm7627_surf "为当前product的名称,"log.txt"则为保存的debug文本。

5.输出信息如下:
  jpege_engine_sw_upscale.c:1434jpege_engine_sw_fetch_chroma_to_lines_buffer jpege_engine_sw_upscale.c:1634jpege_engine_sw_scale_mcu_lines
jpege_engine_sw_upscale.c:848 jpege_engine_sw_fetch_dct_scaled_mcu
  jpege_engine_sw.c:583 jpege_engine_sw_encode pthread.c:188
__thread_entry pthread.c:324 pthread_create
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值