logcat 的log里面 没有内存堆栈的信息 。

nut799 2013-04-01 01:29:05
用logcat查看jni代码时候,有时候crash。

logcat 的log里面 没有 内存的信息 。
类似这些
04-24 05:37:00.476: I/DEBUG(58): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00001a85
04-24 05:37:00.476: I/DEBUG(58): r0 f6502688 r1 00000000 r2 f6502688 r3 00001a85
04-24 05:37:00.476: I/DEBUG(58): r4 00003000 r5 00000000 r6 00000039 r7 00000000
04-24 05:37:00.558: I/DEBUG(58): #00 pc 50408a56 /data/data/tiny.test2/lib/libcaneth.so
04-24 05:37:00.558: I/DEBUG(58): #01 lr

请问是什么情况? 谢谢?
...全文
409 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
nut799 2014-07-17
  • 打赏
  • 举报
回复
后来基本上都出来了 。
帧隅时代 2014-06-20
  • 打赏
  • 举报
回复
同问,已经解决的发布一下答案吧~!!!!!
u010118076 2013-04-01
  • 打赏
  • 举报
回复
我也有这个问题,同问
nut799 2013-04-01
  • 打赏
  • 举报
回复
这里我new 了一个RuntimeException. 打印出来的只有java层的 。。没有关于内存堆栈的信息。。
nut799 2013-04-01
  • 打赏
  • 举报
回复
我是在c++模块里面做了中断。 中断的地方调用jni,返回到java层,启动了一个线程去 从logcat拿信息。如下:
	public  void nativeCrashed()
	{
		Log.e("handller", "handller");  
        new RuntimeException("crashed here (native trace should follow after the Java trace)").printStackTrace();  
        
        startActivity(new Intent(this, CrashHandler.class));     
	}
csdn_2013 2013-04-01
  • 打赏
  • 举报
回复
引用 楼主 nut799 的回复:
用logcat查看jni代码时候,有时候crash。 logcat 的log里面 没有 内存的信息 。 类似这些 04-24 05:37:00.476: I/DEBUG(58): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00001a85 04-24 05:37:00.476: I/DEBUG(58): r0 ……
想打印内存堆栈日志 可以在制定的地方Log.i("a", "b", new RuntimeException());

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧