最近,在推出广告后,我的游戏在安卓视网膜上的冻结帧显示出相当大的增长。
我想使用FrameMetricsAggregator来监控导致此问题的广告活动(应用呈现基于除广告之外的open gl)。
我根据文档在我的代码中添加了监视,但如果我没有在construtor中指定任何活动,结果总是为null。由于广告节目调用是无效的返回类型,因此我不确定如何监控这些特定的活动。
有关如何实现这一目标的任何想法?
答案 0 :(得分:0)
Yaay找到了帮助我自己的东西,
https://stackoverflow.com/a/11082332/6053599
使用上面答案中的代码,我可以获得广告活动的生命周期回调``,可以用来启动和停止跟踪和框架指标。
这就像这样,
当展示广告时,我们会通过onActivityCreated(activity,bundle)
回调通知新活动,并通过调用frameMetrics.add(activity)
在广告关闭之后,我们会通过onActivityStop(activity)
通知,只需调用frameMetrics.stop()
即可获取帧状态的sparseArray,我可以从中计算janky帧,冻结帧等。
如果有人感兴趣,将使用最终代码更新答案。