卡顿、帧率监控

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

我的收藏

前提条件

已完成 集成与初始化

功能配置

开启监控

初始化需要开启卡顿监控。卡顿无需埋点,而掉帧率需要额外埋点,建议打点在滑动列表上,如(ListView、GridView、RecyclerView 等)。

掉帧率埋点

在每次滑动前调用 QAPM.beginScene("xxx滑动", QAPM.ModeDropFrame);
在滑动结束后调用 QAPM.endScene("xxx滑动", QAPM.ModeDropFrame);
一般可以通过重写滑动组件 onScrollStateChanged 方法来实现,示例如下:
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE) {
QAPM.endScene("xxx滑动", QAPM.ModeDropFrame); //xxx滑动名称由您自定义,您可以填写任意名称
} else {
QAPM.beginScene("xxx滑动", QAPM.ModeDropFrame);//xxx滑动名称由您自定义,您可以填写任意名称
}

校验功能是否正常

检索 TAG:QAPM_dropframe_DropFrameMonitor
滑动结束(调用 endScene)后,打印出以下日志则代表掉帧率数据已经存入了本地数据库:



检索 TAG: [plugin::101]
存在 App 本地数据库的掉帧数据将会上报,打印以下数据,代表上报成功:



检索 TAG: QAPM_looper_LooperPrinter
如打印以下日志,则代表卡顿监控正常:



如打印以下日志,则代表卡顿上报正常:



说明:
为避免出现卡死的情况,接口回调里的逻辑请尽量简单明了。
上传的文件大小限制为20MB,大于限制则不上传,请选择认为有帮助的日志文件。
掉帧数据在 终端性能监控 > 卡慢分析 中查看。
卡慢数据在 终端性能监控 > 卡慢问题列表 中查看。