如何检查设备是否足够“快”

5

我找不到更好的措辞来表达我的问题。

在我的应用程序中,我设置了一些相当密集的动画。问题是,在高端设备上,动画运行流畅,令人愉悦。另一方面,我测试过的一个低端设备在执行动画时性能非常差。

为了优先考虑用户体验,我希望在计算能力足够的设备上运行这些内容,并在其他设备上“关闭”它。

我已经思考了一段时间如何区分设备。我想到的唯一的事情就是API级别:考虑到平台碎片化和制造商的延迟,我相信API级别和性能之间应该有某种相关性。但可能还有更好的办法。

你有任何想法吗?

仅为澄清,这个动画不是我可以以任何方式简化的东西(例如,使用更小的可绘制对象、质量较差的位图等)。它主要涉及测量和布局。

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


一些建议 - 读取bogoMIPS值,读取核心数,读取GPU型号,并根据这些决定。对于低端设备,可以使用录制的动画(除非您正在围绕UI组件进行动画处理,在这种情况下,可能只需简单的淡入淡出而不是移动?) - JosephGarrone
@Joseph 谢谢。除了核心数量之外,我对这些都不熟悉,但据我所记,它在 Android 上并不容易阅读(例如平台 API 不能返回可靠的数字)。也许现在不是这样了。 - natario
也许可以尝试这样做 - https://dev59.com/KnA75IYBdhLWcg3w899J(第二个答案) - JosephGarrone
bogoMIPS只是CPU性能的一个非常粗略的指标,你可能需要尝试一些“神奇数字”来确定是否禁用或启用动画。 - JosephGarrone
1个回答

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

谢谢你的回答。你提出了一个好建议,但我不确定它是否值得:我需要设置基准,调整它以做出决定,而且还会在启动时减慢应用程序速度,只是为了确定是否需要有一个UI“装饰”。 - natario

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接