0

考虑到 iDevices 的家族正在扩大,我想这是一个比我更多的人开始遇到的问题:

当您编写针对多个 iDevice 的应用程序时,您如何有效地管理资源,例如 3D 模型、纹理、全屏图像等?

基本上这个问题有两个部分:

1) 是否可以为同一应用程序提供单独的捆绑包到 AppStore,其中将为不同的设备提供不同的捆绑包(例如,与 iPhone 3GS 相比,用户为 iPad 下载的单独包)或者是唯一能提供在AppStore上流行起来的“Game X”和“Game X HD”?

2)如果#1的答案是否定的,那么最佳做法是什么?只保留所有资源的最高分辨率,并在运行时下采样或保留现成的例如与 iPad、iPhone 和 iPhone 4 显示器匹配的全屏图像?

非常欢迎任何意见和建议。我目前的方法是在设备之间保持 3D 和纹理等效,但为任何应该完全填满屏幕的东西保留现成的图像 - 但我觉得这是对带宽的极大浪费,尤其是在将其下载到 iPhone 3 时永远不会使用所有高分辨率图像。

先感谢您!

4

1 回答 1

3
  1. 您可以为“游戏”和“游戏高清”提交不同的申请。不过,Apple 对此很挑剔——iPad 版本必须“提供任何附加功能,以将其与仅 iPhone 的版本区分开来。如应用审查指南第 2.11 节所述”——否则 Apple 将拒绝它——就像他们对应用程序所做的那样我从谁的回复电子邮件中引用了:(

  2. 在创建通用二进制文件时,您可以为资源文件添加前缀,例如:

ipad~图片.xib

或者

iphone~图片.xib

仅在适用平台上运行时使用那些资源。因此,您可以使用“png”文件等来执行此操作,只需加载“picture.png” - 自动使用正确的文件。

于 2010-11-29T18:48:53.807 回答