0

最近,我的游戏在引入广告后在 Android Vitals 上的冻结帧数显着增加。

我想使用 FrameMetricsAggregator 来监控哪些广告活动导致了这个问题(应用程序渲染基于除广告之外的 open gl)。

我根据文档在我的代码中添加了监控,但如果我没有在构造函数中指定任何活动,结果总是空的。由于广告展示调用是无效返回类型,我不确定如何监控这些特定活动。

关于如何实现这一目标的任何想法?

4

1 回答 1

0

Yaay找到了一些可以帮助我的东西,

https://stackoverflow.com/a/11082332/6053599

使用上述答案中的代码,我可以获得广告活动的生命周期回调``可用于启动和停止跟踪和框架指标。

像这样工作,

当广告显示一个创建的新活动并通过回调通知我们时,通过onActivityCreated(activity,bundle)调用将回调中收到的活动添加到框架指标中frameMetrics.add(activity)

之后,当广告关闭时,我们会onActivityStop(activity)在其中简单地调用frameMetrics.stop()以获取 sparseArray 的帧统计信息,我可以从中计算 janky 帧、冻结帧等。

如果有人感兴趣,将使用最终代码更新答案。

于 2018-01-15T13:34:28.057 回答