启动监控

最近更新时间:2024-06-12 15:09:01

我的收藏
启动监控需要使用 qapmplugin 插件在编译期间进行插桩操作,默认插桩点为 Application 与 Activity 的各个生命周期。在 App SDK 统计默认的启动耗时为 Application 的 attachBaseContext 到第一个 Activity 的 onResume 结束。

前提条件

在 App 级别的 build.gradle 中配置了 qapm-plugin 插件。

配置步骤

1. 需要手动添加一个 Application 的子类,例如 BaseApplication(名称不作要求,子类可以不用实现任何方法,可以不用添加任何属性)。
2. 在 AndroidManifest.xml 文件的 application 的节点添加 android:name 属性,属性的 value为“包名+Application 子类的类名”。




额外打点

如果想统计启动区间内的某些方法的耗时,则需要额外的打点,示例如下:



参见代码:
QAPM.beginScene(StageConstant.QAPM_APPLAUNCH, "xxx方法名", QAPM.ModeResource);
/**业务逻辑*/
QAPM.endScene(StageConstant.QAPM_APPLAUNCH, "xxx方法名", QAPM.ModeResource);
如果想自定义启动的结束点,则需要在第一个 Activity 调用 onResume 的20s内额外打点,示例如下:



参见代码:
/**
* 需要自定义结束点的用户需要在onResume之后的20s内,否则以APM的结束点为准
*/
QAPM.endScene(StageConstant.QAPM_APPLAUNCH, QAPM.ModeResource);

校验功能是否正常

每次启动后20s或者切换到后台,如打印以下日志,则代表启动指标数据上报成功。
检索 TAG: [plugin::114]



注意:
需要使用 qapmplugin 插件进行插桩才可用,并且需要手动增加一个 Application 的子类。否则无效。
启动总耗时大于2.5s才会上报个例数据。
启动的问题数据可以在 终端性能监控 > 启动 > 问题列表 查看。