【问题标题】:Target only fast Android devices in the Market仅针对市场中快速的 Android 设备
【发布时间】:2010-10-06 21:31:07
【问题描述】:

我一直在寻找一种仅向市场中“足够快”的手机展示我的游戏的方法,但我找不到任何好的答案。

有人建议通过SDK定位,但这与速度无关。

我见过一些按屏幕尺寸定位的,但一些 Acer 手机和 HTC Legend 对我的游戏来说足够快,但与 HTC Hero 相同的屏幕却很慢。

我还看到一些人通过 OpenGL ES 版本进行过滤,但我找不到任何类型的数据库来告诉我哪些手机具有 OpenGL ES 2。Android 2.0 应该支持它,但我不知道手机是否喜欢HTC Magic,更新到2.0后会支持,否则会卡在1.1。

最好的方法是什么?

谢谢

【问题讨论】:

  • 为什么不警告用户慢速设备可能导致性能不佳?
  • 您不应该阻止您的用户尝试在速度较慢的设备上运行您的应用程序,而只是警告他们潜在的性能问题。桌面游戏不会阻止您在速度较慢的 PC 上安装/运行,有些人可能会警告您不满足系统要求,但我没有看到故意阻止您安装/运行的情况。
  • 因为人们仍然会从市场上安装他们能安装的所有东西,如果不能正常工作,他们只会责怪应用程序。
  • 同意,即使客户被明确告知手机无法正常使用,他们也会抱怨。

标签: android opengl-es google-play


【解决方案1】:

有人建议通过SDK定位,但这与速度无关。

我想任何运行 Android 2.2 的手机都足够快,可以满足您的任何需求。

我还看到一些人按 OpenGL ES 版本进行过滤,但我找不到任何类型的数据库来告诉我哪些手机具有 OpenGL ES 2。

您不需要数据库。通过在您的清单中包含 <uses-feature android:glEsVersion="0x00020000" />,对于设备不支持 OpenGL-ES 2.0 或更高版本的用户,Android Market will filter out your app

【讨论】:

  • 即使很老的 G1 也可以升级到 Android 2.2,SDK 版本也不是速度的可靠指标。
  • 如果 G1 支持 OpenGL ES 2 会怎样?这对我没有帮助。
  • 那么考虑到你的所有限制,除非你让你的游戏运行得更有效率,否则你不太可能找到一个令人满意的解决方案。
【解决方案2】:

在指责硬件之前,您应该仔细查看您的代码并进行几轮分析和优化。您需要回答的问题是代码的哪一部分导致速度变慢以及原因。在我的旧 HTC Magic 上,我看到了一些令人印象深刻的东西运行得又快又流畅,但我也看到了相当不起眼的东西运行得非常缓慢和生涩。

需要强大的硬件可能是快速简便的解决方案 - 如果您可以让它工作(请参阅上面的所有 cmets) - 但同时您会错过很多观众。

【讨论】:

    【解决方案3】:

    您可以测试这是否有效:

    将此添加到您的清单(请参阅http://developer.android.com/guide/topics/manifest/supports-gl-texture-element.html

    这应该会过滤掉所有没有 GPU 的设备(因为软件仿真不支持上述纹理压缩格式)。

    不过,这只是一个粗略的猜测......

    【讨论】:

    • 这将过滤掉所有设备,因为这表示设备必须支持所有这些 OpenGL 纹理压缩格式。他们都没有。 (例如,Tegra 支持 dxt 但不支持 pvrtc,而 Kindle Fire 和其他 PowerVR 设备支持 pvrtc 但不支持 dxt 等)
    猜你喜欢
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多