【问题标题】:FPS testing in android applicationAndroid应用程序中的FPS测试
【发布时间】:2012-06-11 15:49:55
【问题描述】:

Android 应用程序开发人员如何测试其应用程序的 FPS(每秒帧数)?我说的是一般应用,不是游戏。

它可以在模拟器或手机上。

我一直在寻找这个,但没有找到方法。如果有开发者能阐明这一点,那就太好了。

【问题讨论】:

  • 如果不是游戏,您能否说明您为什么要寻找 FPS?
  • @MorrisonChang 对于一般应用来说,流畅的外观和感觉仍然非常重要,就像游戏一样。滚动时的卡顿和跳过肯定会损害用户体验。不过,我不知道找到一个特定的 FPS 数字对于一个典型的应用程序来说是必要的。
  • 而不是使用 FPS 作为性能的衡量标准。在 4.0 上,如果在 UI 线程上执行繁重的任务,您可以在设置中的开发人员选项下启用“严格模式”以闪烁屏幕。这些将是您要注意的任务类型和性能下降。
  • @Morrison Chang:在一般的应用程序中,比如说,如果用户有一个很大的列表,在这种情况下,找到FPS会很有帮助。人们如何找到fps?
  • @kcoppock:你能告诉我,如何找到 FPS。

标签: android testing frame-rate


【解决方案1】:

正如 Guykun 和 kcoppock 所提到的,如果您只使用 View 小部件或 Canvas,您通常不会寻找 FPS 来确定视觉性能。

由于除了“不是游戏”之外你没有提到你在做什么,你可能想回顾一下 Android 是如何绘图的。

http://developer.android.com/guide/topics/graphics/2d-graphics.html

大部分性能问题来自于在 UI 线程上做的事情。使用严格模式查找问题。

http://android-developers.blogspot.com/2010/12/new-gingerbread-api-strictmode.html

还可以使用工具查找性能热点:

https://developer.android.com/topic/performance

https://developer.android.com/topic/performance/rendering/inspect-gpu-rendering

https://developer.android.com/topic/performance/rendering/optimizing-view-hierarchies

如果您想了解更多幕后情况的详细信息,请参阅 Google IO 会议,了解他们为硬件加速渲染所做的工作

Google I/O 2011: Accelerated Android Rendering

Google 在 UI 性能方面做了额外的工作,并在 Youtube 上提供了 Google IO 会议:

Google I/O 2012 - For Butter or Worse: Smoothing Out Performance in Android UIs

Google I/O 2013 - Android Graphics Performance

Android performance: UI (Google I/O '17)

Drawn out: How Android renders (Google I/O '18)

【讨论】:

    【解决方案2】:

    您可以使用TinyDancer

    详情请查看我的回答here

    【讨论】:

      【解决方案3】:

      市场上有一些应用可以测量其他游戏的 FPS。请以 GameBench 为例,它可以显示 FPS。

      [免责声明]:我是GameBench的创始人之一。

      【讨论】:

      • GameBench 是一个不错的工具。
      • @Karthik 请在推广您正在开发的工具时说明。
      • 同意@Sistr - 我很久以前发表了这条评论。我现在确实要提一下。
      【解决方案4】:

      我使用GameBench 对安卓应用程序进行 FPS 分析(它不是游戏,我想在我的应用程序的动画开始运行时检查 FPS)。 GameBench 捕获关键帧速率 (FPS) 指标,这是衡量 UX 流动性的最佳客观指标。

      我的要求是在我的 android 应用程序的动画启动时验证 FPS 为 30FPS。

      我已通过 GameBench 工具提供的图表报告验证了以下内容,

      • 动画开始时,FPS 从 0 FPS 变为 30FPS。
      • 动画结束时,FPS 从 30 FPS 移动到 0 FPS

      看截图。

      要使用此工具,您必须安装一个 android 应用程序和一个桌面启动器。

      1. 在您的 Android 设备中安装 GameBench 应用程序。
      2. 使用电子邮件地址注册 GameBench 并安装桌面应用程序。
      3. 下载并安装 GameBench 桌面启动器。
      4. 将设备与桌面连接。您可能会在设备上收到一个弹出窗口,要求您允许 USB 调试
      5. 在 GameBench Android 应用程序中,您可以选择应用程序(我已经安装在平板电脑上)进行分析。
      6. 然后您可以记录每秒帧数并生成报告(它也可在 Web 仪表板、FPS、屏幕截图、性能、电池等中使用)。

      参考:

      1. https://play.google.com/store/apps/details?id=com.gamebench.metricscollector
      2. https://www.gamebench.net/
      3. https://docs.gamebench.net/web-dashboard/getting-started

      顺便说一句,

      我也使用过FPS Meter app,但在我的情况下似乎不准确。当我在 android 应用程序中的动画启动时,得到 29FPS 到 31 FPS。预期 FPS 为 30FPS。

      https://play.google.com/store/apps/details?id=com.ftpie.fpsmeter&hl=en

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-02-13
        • 1970-01-01
        • 1970-01-01
        • 2015-03-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多