Bugly 异常捕获的简单集成
公司一直没有引入这个强大的 crash 异常捕获工具,而是采用了传统的自行捕获异常上报到服务器或者保存到本地,同时在使用友盟统计时,由于友盟也有异常捕获,但是在最近出现了一个比较严重的问题,就是友盟后台一直没有捕获到异常,数据显示正常,但是客户一直反馈说,在某些场景上操作,应用就会 crash 。由于没有及时捕获导致客户在反馈的时候,我们没能及时定位问题以及解决。在解决之后,通过讨论一致决定,采用 bugly 进行异常捕获。
- 采用远程依赖
1.在 build.gradle 中添加依赖和 NDK 的配置
文章图片
???????
2.由于 bugly 的仓库是分开管理的,需要在 project 的build.gradle 加入 JCenter 仓库和MavenCenter 仓库。
repositories {
google()
jcenter()
mavenCentral()
}
- 在清单文件 AndroidManifest.xml 中添加权限:
- 在 Application 的 onCreate() 中进行初始化
private fun initBugly() {
/**
* 第一个参数为上下文
* 第二个参数为 APPID
* 第三个参数为 SDK 调试模式开关,调试模式的行为特性如下:
* 输出详细的 Bugly SDK 的 Log;
* 每一条Crash都会被立即上报;
* 自定义日志将会在 Logcat中输出。
* 建议在测试阶段建议设置成 true,发布时设置为 false。
*/
CrashReport.initCrashReport(applicationContext, "32b8e7b589", false)
}
到这里基本上 bugly crash 异常上报已经集成完毕,我们可以在后台进行测试,如添加一个按钮“测试”,触发方法 CrashReport.testJavaCrash(); 在 Bugly 平台中就可以看到此 bug 的具体信息了。
文章图片
【Bugly 异常捕获的简单集成】当然 bugly 本身就有很详细的官方文档:
https://bugly.qq.com/docs/user-guide/instruction-manual-android/?v=20181014122344
推荐阅读
- python-安装sublime遇到异常
- Android|Android BLE蓝牙连接异常处理
- C#中类的异常处理详解
- php异常处理
- 使用sqlalchemy|使用sqlalchemy orm 的model序列化,解决返回model的异常
- 20170323
- WebAPI|WebAPI 多对多对象输出json异常()
- python深度学习实现自编码器Autoencoder神经网络异常检测心电图ECG时间序列
- 解析json用的Gson解析出现异常记录问题
- c#|11、C#处理程序异常的技术