本文介绍当Android App需要接入App监控,并持续关注崩溃日环比的增长情况时,业务需要操作的完整流程。
在project级别的build.gradle
文件中,添加maven地址。
buildscript { repositories { maven { url "https://artifact.bytedance.com/repository/Volcengine/" } maven { url "https://artifact.bytedance.com/repository/byteX/" } } } allprojects { repositories { maven { url "https://artifact.bytedance.com/repository/Volcengine/" } } }
接入应用性能监控全链路版。
在project级别的build.gradle
文件的dependencies中,添加以下代码,接入插件组件辅助插桩。apm_insight_plugin
国内海外使用同一个版本。
classpath "com.volcengine:apm_insight_plugin:1.4.2"
在app module的build.gradle
文件的dependencies中,添加以下代码,根据国内应用还是海外应用选择下面两个版本的一个。
国内应用接入cn版本,上报到中国,使用如下依赖:
// 国内应用在dependencies中添加 implementation 'com.volcengine:apm_insight:1.5.6.cn' implementation 'com.volcengine:apm_insight_crash:1.5.9'
海外应用接入oversea版本,上报到马来西亚柔佛,使用如下依赖:
// 海外应用在dependencies中添加 implementation 'com.volcengine:apm_insight:1.5.7.oversea' implementation 'com.volcengine:apm_insight_crash:1.5.8.oversea'
在Application中onCreate中,添加以下代码,初始化崩溃相关功能。
MonitorCrash.Config config = MonitorCrash.Config.app({{AppId}}) .token({{AppToken}})// 设置鉴权token,可从平台应用信息处获取,token错误无法上报数据 .build(); MonitorCrash monitorCrash = MonitorCrash.init(ApplicationContext, config);
说明
启动崩溃监控,开始收集数据。
注意
请在用户同意隐私政策后,再调用方法收集数据。
// 启动监控,当初始化时autoStart传入false设置为初始化时不自动开启监控,需要在合适的位置调用start方法开启监控;如果初始化时未设置autoStart参数或者设置为true,将自动开启监控,不需要调用start方法。 if (monitorCrash != null) { monitorCrash.start(); }
崩溃是100%上报的,不受采样率控制。您可以执行以下操作,验证数据上报。
添加以下代码,等待App发生Java崩溃。
throw new RuntimeException("Monitor Exception"); // 执行就崩,如果应用启动后8秒内崩溃, 则判定为启动崩溃进行上报
重新启动App,SDK会立即上报上次启动期间发生的崩溃,然后在控制台查看上报成功的日志。
您可以新建崩溃报警任务,设置合适的报警策略,帮助您持续关注崩溃日环比的增长情况。
如果控制台在登陆状态,当飞书群收到报警通知时,可以直接单击消息卡片中的详细信息进入崩溃报警页面。
如果控制台非登陆状态,收到报警通知时,请登陆后按照以下操作查看报警详情。