通过Python解析tombstone

方法:

下载my_parse_stack.py 到android sdk目录,然后执行 ./my_parse_stack.py tombstone_xx 即可打印出调用堆栈。

想要让cpp crash的时候可以被android捕捉,保存到tombstone中,则需要native app 不对信号量做处理。

当然,如果一定要在代码中捕捉信号量,并打印对应的堆栈信息,方法如下:

1、代码

android native c++打印堆栈

android::CallStack stack;
stack.update(2); // void update(int32_t ignoreDepth=1, pid_t tid=BACKTRACE_CURRENT_THREAD);
android::String8 info = stack.toString(); // 获得堆栈内容
CLog::Log("CrashLog/device_exception", LOGCATCH, info.string()); // 输出到log中

 2、需要在Android.mk中libutils.so

对应的class CallStack的代码实现在system/core/libutils/CallStack.cpp中,头文件定义在system/core/include/utils/CallStack.h,如下为android 5.1 的头文件声明:

class C

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值