Ios 通用二进制文件是否包含iPhone应用包中所有沉重的ipad图形?怎么办?

Ios 通用二进制文件是否包含iPhone应用包中所有沉重的ipad图形?怎么办?,ios,ipad,retina-display,universal-binary,Ios,Ipad,Retina Display,Universal Binary,由于iPad3有视网膜显示器,我开始担心iPhone和iPodtouch设备上通用二进制文件中的“图像垃圾邮件”数量。显然,他们不需要这些资源 我从来没有真正检查过,但也许有人知道:当iPhone下载一个通用二进制文件时,应用商店是否会自动发布一个版本,其中所有沉重的iPad图形都被剥离了?还是iPhone或iPodtouch充斥着只在iPad上才需要的内容 有没有办法让通用二进制“智能化”,让iPad只接收iPad资源,而iPhone只接收iPhone资源 就我而言,我有一个10MB的通用应用

由于iPad3有视网膜显示器,我开始担心iPhone和iPodtouch设备上通用二进制文件中的“图像垃圾邮件”数量。显然,他们不需要这些资源

我从来没有真正检查过,但也许有人知道:当iPhone下载一个通用二进制文件时,应用商店是否会自动发布一个版本,其中所有沉重的iPad图形都被剥离了?还是iPhone或iPodtouch充斥着只在iPad上才需要的内容

有没有办法让通用二进制“智能化”,让iPad只接收iPad资源,而iPhone只接收iPhone资源


就我而言,我有一个10MB的通用应用程序。将其升级到iPad将意味着iPod touch用户的文件大小将增加一倍。

要做到这一点,真的没有一个好方法不会让用户感到厌烦。也就是说,你可以把它和iPhone的图形一起发布(或者根本没有),然后在第一次发布时,它会从服务器上下载运行它的任何设备所需的所有图像。就像我说的那样,这并不是一个好办法。在我看来,坚持大容量的初始下载似乎是最好的。

不,当你在不同的设备上安装时,应用包中没有任何内容会被剥离。请记住,整个过程都是经过代码签名的,因此不能删除任何内容,否则签名将无效。这里的标准建议是接受这样一个事实:你的客户实际上只会使用你的应用包中的一半资源(如果你不在iphone和ipad之间共享资源,则为四分之一)。如果这对你来说是一个交易器,你可以考虑在第一次启动时从你的服务器下下载必要的资源,但是记住这会使你的事情变得非常复杂,并且实际上是一个非常糟糕的用户体验。几乎可以肯定的是,你只想适应不断增大的尺寸。

要做的就是跳过非视网膜图像,因为iOS会自动将图像从@2x形式向下缩放。虽然这可能会造成轻微的滞后,但这是值得的,因为这将使IPA的大小保持在较低的水平,用户也会感到满意。但是,如果你正在做一个FPS非常重要的游戏,那么你就必须咬紧牙关,将所有设备的所有图形都放在那里。

尺寸加倍也会让你接近3G下载上限。但我想知道新iPad上4G的上限是否会一样,这不全是关于iPad的。如果你有一个通用的应用程序,你还必须记住iPodtouch的用户。@iBradApps 3G的容量也是50MB吗?或仅4G?适用于任何类型的数据:2G/3G/4G。不幸的是,用户不得不忍受尺寸的增加。我看到应用程序从约40MB增加到150MB,这仅仅是因为视网膜资产的增加与我的iPad1无关。Qua用户,我认为这是盗窃我的SSD的1MB。作为开发者,这是一个进退两难的问题。