指定iPhone应用程序的最低内存要求

指定iPhone应用程序的最低内存要求,iphone,memory,ram,Iphone,Memory,Ram,我的应用程序需要至少40MB的RAM,所以早期的iPhone(比如3G,第一代iPodtouch版本)就没有(我的应用程序最大容量约为20MB)。有没有合适的方法来禁止将其安装到3G设备上?我知道UIRequiredDeviceCapability,但它没有最小可用内存的参数。首先,您确定您的应用程序在旧设备上实际使用了40 MB的RAM吗?我发现(通过使用内存监控工具),同一个应用程序在我的iPhone3G上使用的内存比在我的iPhone4或iPad上少。后两个设备的接口中有更多的像素,所以我

我的应用程序需要至少40MB的RAM,所以早期的iPhone(比如3G,第一代iPodtouch版本)就没有(我的应用程序最大容量约为20MB)。有没有合适的方法来禁止将其安装到3G设备上?我知道UIRequiredDeviceCapability,但它没有最小可用内存的参数。

首先,您确定您的应用程序在旧设备上实际使用了40 MB的RAM吗?我发现(通过使用内存监控工具),同一个应用程序在我的iPhone3G上使用的内存比在我的iPhone4或iPad上少。后两个设备的接口中有更多的像素,所以我的应用程序在它们上面运行时会占用更多的内存

如果可以,请确定是否可以优化内存使用,使其在较旧硬件的安全(<30 MB)范围内。如果你能做到这一点,我想你会看到你的应用程序的整体性能提高,即使是在较新的硬件上


最后,如果您绝对无法在较旧的iOS设备上运行,我建议使用UIRequiredDeviceCapabilities键
armv7
opengles-2
。两者都将过滤较新的(iphone3gs和更高版本)硬件。虽然没有对内存大小进行设置,但iPhone 3G S推出时的内存比旧款要多得多,此后再也没有一款设备内存更少。很难想象苹果会在将来的任何时候减少这个规范。

Lol,如果你一次需要那么多内存,你可能需要重新考虑你的代码解决方案。加上投票,所以它得到了更多的关注。同上,LOL,40Mb。。它是干什么的?我想我说的iOS4在上述设备上不受支持是正确的,或者至少第一代iPhone和第一代iPod touch不受支持,所以将应用程序定位为这个最小操作系统版本?该应用程序使用高级特定的第三方3D图形引擎,我无法控制这一点。使用更少的内存是一个有效的建议,但对我来说没什么用处。我的观察结果是,iPhone3G在3.x操作系统版本中比在4.x版本中有更多的可用内存(用于应用程序),所以最低操作系统版本并不是一个好的解决方案。