【问题标题】:Measuring Frame Render Time of Android App测量Android App的帧渲染时间
【发布时间】:2014-04-02 01:38:02
【问题描述】:

我想知道我的应用的性能,尤其是视频帧的渲染时间。我知道 Eclipse->DDMS Perspective->System Information->Frame Render Time 中的 DDMS。但是,正如其他question 中所问的那样,即使您在应用程序运行时“从设备更新”,渲染信息似乎也不会显示。

经过一番研究,我从这个blogthis other one 中发现了这个命令:

adb shell dumpsys gfxinfo <package-name>

但是,当我运行该命令时,它会立即完成运行,并且我会得到一个如下所示的输出:

也就是说,我没有得到超过一行的配置文件数据(通常结果为空)。为了绘制图表,我可以做些什么来获取多个数据点?或者,我应该考虑哪些其他替代方案来评估应用程序的渲染性能?

【问题讨论】:

    标签: android opengl-es rendering webrtc ddms


    【解决方案1】:

    正确的工具是 systrace (basic docs, verbose docs)。您将需要一个支持它的设备,并且需要 root 才能获得一些更有用的位。

    您可以看到 every thread is doing 的内容,并且许多图形内容都经过检测。我认为视频编解码器本身通常不会被检测,因此您将无法看到硬件编解码器的解码时间,但您可以看到缓冲区在系统中移动。

    大部分有趣的事情都会发生在mediaserverSurfaceFlinger,因此您不会在应用的方法分析中看到解码/渲染活动。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-22
      • 1970-01-01
      • 2015-07-29
      • 1970-01-01
      • 2015-07-18
      相关资源
      最近更新 更多