【发布时间】:2014-06-02 04:43:36
【问题描述】:
更新:
iPad HD:iPad Retina(高分辨率)(2048x1536)
iPad:中等分辨率 (1024x768)
iphone:低分辨率(低于 1024x768)
我是一名 c++ 开发人员,主要在 cocos2d-x 上开发我们的应用程序以支持跨平台。 由于我们支持所有设备分辨率,因此我们需要将所有资源内容(iphone、ipad 和 ipadhd)以一个通用二进制文件提供给 Apple AppStore。我们的应用程序的累积大小为 38MB,并且已经在 Apple AppStore 中。
我们一直在考虑拆分应用程序以分别支持 iPhone、iPad 和 iPadHD。但是在"xcode > Target > Devices" 中,我只能看到iPhone、iPad 和Universal 三个选项。
我知道什么?
- 如果我要单独支持 iPhone 和 iPad,我需要两个不同的名称,例如
AppName和AppName for iPad。 - 我们不能使用现有的名称和捆绑包 ID,如果它已经是通用二进制文件,则继续仅支持其中一个目标设备。
我想完成什么?
- 我想为具有三个不同名称(或捆绑 ID)的同一应用程序提供三个不同的软件包,例如 Apple AppStore 的
AppName、AppName for iPad和AppName HD。 - 仅打包支持单个目标设备所需的资源(我可以使用 python 脚本删除不相关的资源资产)。
- 只要有任何更新,就会针对各个目标设备发布。
有什么问题?
- 如何只支持iPad HD?我不想将 ipad(12MB) 和 ipadhd(17MB) 资源捆绑在一个二进制文件中。是否有可能完成这项任务?
- 如果上述问题没有解决,我选择目标设备为
iPad,是否需要同时支持iPad和iPad HD?
谢谢
【问题讨论】:
-
您能否澄清一下“iPad HD”的确切含义?您是指视网膜 iPad (2048x1536) 而不是原始 iPad (1024x768)?
-
从用户的角度来看,这是一个非常糟糕的想法。如今的应用程序几乎被认为是通用的,您不应该让用户知道并在您的应用程序类型之间做出选择,特别是如果它们不是免费的。此外,您的应用程序进入任何图表前 100 名的机会(至少)分成三份。你也没有提供你想要进行这种拆分的理由(除了“我不想......”),也许这个理由是我们应该真正评论或帮助的事情,如果它本质上是技术性的。
-
真的,38MB 的通用应用程序并不是那么糟糕。您的应用程序很好,无需拆分。由于您的通用应用已经在应用商店中,因此在将用户转移到特定屏幕的应用时,您会失去很多用户。
-
@LearnCocos2D 我同意你的看法。很抱歉跳过这个。原因是:我们的应用程序也发布到了 Android Play 商店,我们正在尝试通过 Android 多 apk 支持来支持不同分辨率的设备,以便我们可以减小应用程序的大小,并且它可以覆盖许多互联网带宽较低的用户。所以,我一直在寻找对 AppStore 的“多 APK”支持。
-
@BergQuester 是的,38 MB 不错。以前它达到了 55MB。我们在音频和 png/jpeg 压缩方面做了一些努力,并达到了这个目标。我们一直在考虑拆分应用程序,因为在 cocos2dx 中,我们需要将所有资源捆绑在一个二进制文件中。因此,我们一直在考虑是否可以为所有三种不同分辨率的设备(iPhone、iPad、iPad Retina)提供不同的二进制文件。它只是为了减小应用程序大小。在itunes connect中能否为不同的设备提供不同的包? AppStore 是否负责为适当的设备安装适当的软件包?
标签: ios iphone xcode ipad cocos2d-x