vlambda博客
学习文章列表

精选火热Github项目推荐:xCrash!Android开发的你一定要用

来源:http://www.apkbus.com/blog-985981-81036.html

xCrash

xCrash 能为安卓 APP 提供捕获 java 崩溃,native 崩溃和 ANR 的能力。不需要 root 权限或任何系统权限。

xCrash 能在 App 进程崩溃或 ANR 时,在你指定的目录中生成一个 tombstone 文件(格式与安卓系统的 tombstone 文件类似)。

xCrash 已经在 爱奇艺 的很多安卓 APP(包括爱奇艺视频)中被使用了很多年。

特征

  • 支持 Android 4.0 - 10(API level 14 - 29)。
  • 支持 armeabi,armeabi-v7a,arm64-v8a,x86 和 x86_64。
  • 捕获 java 崩溃,native 崩溃和 ANR。
  • 获取详细的内存使用统计信息。
  • 通过正则表达式设置需要获取哪些线程的信息。
  • 不需要 root 权限或任何系统权限。

架构

精选火热Github项目推荐:xCrash!Android开发的你一定要用 

捕获 native 崩溃

精选火热Github项目推荐:xCrash!Android开发的你一定要用

捕获 ANR

精选火热Github项目推荐:xCrash!Android开发的你一定要用

使用

1. 增加依赖
精选火热Github项目推荐:xCrash!Android开发的你一定要用
2. 指定一个或多个你需要的 ABI。
精选火热Github项目推荐:xCrash!Android开发的你一定要用
3. 初始化 xCrash。
Java
精选火热Github项目推荐:xCrash!Android开发的你一定要用
Kotlin
精选火热Github项目推荐:xCrash!Android开发的你一定要用

Tombstone 文件默认将被写入到 Context#getFilesDir() + “/tombstones” 目录。(通常在: /data/data/PACKAGE_NAME/files/tombstones)

在 src/java/xcrash/xcrash_sample 文件夹中,有一个更实际和复杂的示例 APP。

构建

如果你想编译 xCrash 的源码。 请按以下步骤进行:
1. 下载 Android NDK r16b,设置 PATH 环境变量。
2. 编译和复制 native 库。
3. 编译 AAR 库。
更多使用方法可以查看官方文档

开源地址:

https://github.com/iqiyi/xCrash