我有一个适用于iPad 1st gen的应用程序。这是一个使用cocos2d框架制作的游戏。
第一台iPad确实有256mb ram并使用乐器(内存监视器工具)我能够确定应用程序在设备上工作在约90-110mb ram(好吧,让我们只相信“物理内存使用”图表虽然一开始“物理记忆免费”显示它是〜128mb免费,然后玩几个级别后再达到〜3-4mb,并且永远不会更高)
因此,虽然它确实有足够的内存,但它会缓存资产,当资源耗尽时,缓存的资产会被释放。
我所做的是为其添加高分辨率图形。几乎所有资产都作为4位资产加载,所以如果我有一个资产100x100像素,它将消耗100x100x4 = 40000字节RAM;相同的高清图像将是200x200像素,将消耗200x200x4 = 16000字节RAM;这是4倍大!
所以问题是 - 它会在拥有512mb内存的iPad 2高清屏幕上正常工作吗?
看看我是否乘以~110mb * 4它将是〜440mb,这意味着系统将剩下512 - ~440 = ~72mb。所以我不知道这是否足够系统,它不会关闭应用程序。我不确定,但我认为第一代iPad可以为应用程序提供大约120-130mb的内存,然后关闭它。所以这让我觉得这不适用于iPad2。我可能是对的吗?
ps:我已经在3d gen iPad上测试了这款应用程序,它拥有1GB内存并运行良好
答案 0 :(得分:1)
iPad 2具有与原始iPad相同的屏幕分辨率,因此它不会使用您添加到应用程序的新视网膜图稿。这意味着如果它已经在运行原始iPad,它应该在iPad 2上正常运行。
答案 1 :(得分:0)
iPad 2没有视网膜屏幕,因此iPad 2的物理分辨率与iPad 1相同。只在支持它的设备上进行视网膜风格图像,这样可以保持低内存无法处理视网膜分辨率的设备。