【问题标题】:How to check if device is *fast* enough如何检查设备是否*快*足够
【发布时间】:2016-03-29 08:47:00
【问题描述】:

我找不到更好的措辞来回答我的问题。

在我的应用程序中,我设置了一些非常密集的动画。问题是,在高端设备上,动画运行流畅且赏心悦目。另一方面,我测试的一款低端设备在制作动画时表现很差。

尝试将用户体验放在首位,我想在计算能力足够的设备上运行这些东西,并以某种方式在其他设备上“关闭”它。

我已经思考了一段时间如何区分设备。我唯一想到的是 API 级别:考虑到平台碎片化和制造商的延迟,我认为 API 级别和性能之间应该存在某种相关性。但可能会有更好的东西。

你有什么想法吗?

澄清一下,动画不是我可以以任何方式减轻或简化的东西(例如,使用较小尺寸的可绘制对象、质量较差的位图......)。它主要是测量和布局的东西。

请随意编辑我选择的标签。

【问题讨论】:

  • 几个建议 - 读取 bogoMIPS 值,读取内核数,读取 gpu 模型并根据这些做出决定。对于低端设备,可能是录制的动画(除非您正在围绕 UI 组件制作动画,在这种情况下可能只是简单的淡入而不是移动?)
  • @Joseph 谢谢。除了核心数量之外,我对其中的任何一个都不熟悉,但据我所知,它在 android 上并不容易阅读(例如,平台 API 不会返回可靠的数字)。也许这不再是真的了。
  • 也许可以尝试类似 - stackoverflow.com/questions/3021054/…(第二个答案)
  • bogoMIPS 只是 CPU 性能的一个非常粗略的指标,您可能需要使用“幻数”来确定是禁用还是启用动画

标签: android performance android-animation cpu cpu-speed


【解决方案1】:

您的应用程序第一次运行时,您可以运行某种微基准测试,以不超过一两秒的时间测量 CPU 性能。我建议不要自动禁用动画,但如果设备看起来很慢会警告用户并询问他们是否要禁用它们。

【讨论】:

  • 感谢您的回答。你有一个很好的建议,但我不确定它是否值得:我必须设置基准,调整它以做出决定,而且在启动时减慢应用程序,只是为了确定 UI“装饰”是否应该在那里。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多