0

我有一个适用于第一代 iPad 的应用程序。这是一款使用 cocos2d 框架制作的游戏。

第一台 iPad 确实有 256mb 内存,并且使用工具(内存监控工具)我能够确定该应用程序在设备上的内存约为 90-110mb Memory Free”一开始就显示它是~128mb free,然后在玩了几个级别后免费达到~3-4mb,并且永远不会变得更高)

因此,虽然它确实有足够的内存,但它会缓存资产,当内存用完时,缓存的资产会被释放。

我所做的是将高分辨率图形添加到它。几乎所有的资产都加载为 4 位资产,所以假设我有一个 100x100 像素的资产,它将消耗 100x100x4 = 40000 字节内存;相同的高清图像将是 200x200 像素,将消耗 200x200x4 = 16000 字节内存;这是4倍大!

所以问题是 - 它可以在具有 512mb 内存的 iPad 2 高清屏幕上正常工作吗?

看看我是否将 ~110mb*4 相乘,它将是 ~440mb,这意味着它将是 512 - ~440 = ~72mb 留给系统。所以我不知道这对系统来说是否足够,它不会关闭应用程序。我不确定,但我认为第一代 iPad 可能会为应用程序提供大约 120-130mb 内存,然后将其关闭。所以这让我觉得这在 iPad2 上是行不通的。我可能是正确的吗?

ps:我已经在 3d gen iPad 上测试了这个应用程序,它有 1gb ram,它运行得很好

4

2 回答 2

1

iPad 2 的屏幕分辨率与最初的 iPad 相同,因此它不会使用您添加到应用程序中的新视网膜图稿。这意味着如果它已经在运行原始 iPad,它应该在 iPad 2 上运行良好。

于 2012-12-14T14:33:16.203 回答
0

iPad 2 没有 Retina 屏幕,因此 iPad 2 的物理分辨率与 iPad 1 相同。仅在支持它的设备上进行 Retina 风格的图像,这样您就可以在可以运行的设备上保持低内存'不处理视网膜分辨率。

于 2012-12-14T14:36:01.147 回答