coredump 可以用来调试android native 进程的异常

1、coredump 在android中打开

       设置coredump 大小

      ulimit  -c  unlimited   //不限制coredump 大小,也可以设置为具体值


2、设置coredump 文件名称,与路径   

    echo "1" >  /proc/sys/kernel/core_uses_pid  //设置生成coredump的文件名带有 异常进程的pid

    echo "/data/log/core-%e-%p" > /proc/sys/kernel/core_pattern  设置生成coredump的路径为 /data/log ,


3、使用ndk或源码编译 对应平台 带有symbols 信息的二进制文件

       ndk-build NDK_DEBUG=1  module

4、push 到手机中,更改权限,运行生成core文件

5、将data/log中的core文件导出来,使用对应平台的gdb进行调试

      gdb  module  core


上面这些动作,只能为native程序产生coredump,对于由zygote fork的apk进程则不会生成coredump,因为zygote在做初始化的时候会忽略Linux的配置,使用默认不生成coredump的配置,system server同样是由zygote fork的,所以也不会产生coredump,所以如果需要为system server配置生成coredump,如果其他apk进程需要产生coredump同样需要在开机初始化的时候为zygote做特殊的设置

所谓的特殊设置就是将zygote的启动参数中应用rlimit的配置



      

更多相关文章

  1. android个人视频学习笔记(二)
  2. 使用IntelliJ IDEA(androidstudio前身)开发android移动应用前的基
  3. [Andriod] android中singleTask的home键的问题
  4. 使用NDK插件并支持NDK调试(DEBUG)
  5. 9.5android线程优先级,go和rust比较
  6. Android(安卓)WebView 缓存处理
  7. Android之ExpandableListView的属性(Group不展开)
  8. AS 配置使用NDK
  9. Android(安卓)OpenGL ES 简明开发教程二:构造OpenGL ES View

随机推荐

  1. 总结一下Android中主题(Theme)的正确玩法
  2. 【方案汇总】Android(安卓)NDK编译时版本
  3. androidEditTextinputType及android:imeO
  4. 修改android statusbar颜色
  5. android widget 桌面插件的简单事例讲解
  6. 浅入浅出Android(012):Android下的计时器
  7. Android笔记----禁止横竖屏切换
  8. 【Android】自定义View实现信封红蓝边/收
  9. Android中Message机制的灵活应用(一)
  10. android开发每日汇总【2011-8-25】