-
Notifications
You must be signed in to change notification settings - Fork 348
0x02b Apply AndroidGodEye for Release_zh
hui.zhao edited this page Feb 14, 2020
·
7 revisions
你可能会希望在生产环境下使用AndroidGodEye来监控线上用户的App性能,一般调用observeModule方法来消费性能数据,并在回调中上报到服务端即可:
try {
GodEye.instance().observeModule(GodEye.ModuleName.HEAP, new Consumer<HeapInfo>() {
@Override
public void accept(HeapInfo heapInfo) throws Exception {
// 这里可以上报服务端
Log.d("AndroidGodEye",String.valueOf(heapInfo));
}
});
} catch (UninstallException e) {
e.printStackTrace();
}由于部分模块对性能会有一定影响,所以如果在生产环境使用AndroidGodEye需要特别注意:
| 模块名称 | 描述 | 是否可在生产使用 | 说明 |
|---|---|---|---|
| CPU | 手机和App Cpu检测 | 是 | 每隔一段时间上报对数据统计来说没有意义,但可用于单用户排障 |
| BATTERY | 电池检测 | 是 | - |
| FPS | 帧率检测 | 不建议 | 对性能会有轻微影响,如果检测卡顿请使用SM模块 |
| LEAK | 内存泄漏检测 | 是 | 特别注意模块配置中请设置debug为false,debugNotification为false,这样只会检测内存泄漏的页面,而无法分析泄漏的Gc Root Path,可用于生产的统计 |
| HEAP | 运行堆内存占用检测 | 是 | 每隔一段时间上报对数据统计来说没有意义,但可用于单用户排障 |
| PSS | 实际物理共享内存占用检测 | 是 | 每隔一段时间上报对数据统计来说没有意义,但可用于单用户排障 |
| RAM | 手机内存 | 是 | 每隔一段时间上报对数据统计来说没有意义,但可用于单用户排障 |
| NETWORK | 网络请求检测 | 是 | - |
| SM | 卡顿检测 | 是 | 模块配置中请设置debugNotify为false,并注意设置卡顿的阈值,防止卡顿过多上报影响用户性能 |
| STARTUP | 启动检测 | 是 | - |
| TRAFFIC | 手机和App流量检测 | 是 | - |
| CRASH | Java、Native崩溃/ANR | 是 | - |
| THREAD | App线程即堆栈Dump检测 | 是 | 每隔一段时间上报对数据统计来说没有意义,但可用于单用户排障 |
| PAGELOAD | 页面加载和生命周期检测 | 是 | - |
| METHOD_CANARY | 方法耗时检测 | 否 | 生产包请在Application Module Project('com.android.application')的build.gradle中不要apply plugin: 'cn.hikyson.methodcanary.plugin'
|
| APP_SIZE | App大小,包括apk、存储和缓存 | 是 | - |
| VIEW_CANARY | 视图层级、过度绘制检测 | 不建议 | 对性能有轻微影响 |
| IMAGE_CANARY | 图片不合理内存占用检测 | 是 | - |