首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iPhone内存使用优化/性能调优

iPhone内存使用优化/性能调优
EN

Stack Overflow用户
提问于 2011-06-07 21:57:24
回答 1查看 2.8K关注 0票数 0

我正处于iphone游戏开发的最后阶段:优化和性能调优。我的问题是,游戏在iPhone4和iPad上运行相当顺利,但由于内存不足,它经常在iphone 2和iOS 3.1.3上崩溃。

我已经检查了所有内存泄漏检测/清理过程,Xcode工具除了系统库(见下面的屏幕截图)外,没有泄漏。我也很少使用“自动发布”。

(大图:单击此处)

我还使用"CPU采样器“和”分配“对我的应用程序进行了描述,但对结果有点困惑。这是“分配”基准的结果:

(大图:单击此处)

这是一场比赛后的结果。正如你所看到的,"Live“只有3.93MB,这应该不是什么大问题(根据我的理解) --但这个游戏在iPhone 2 ios 3.1.3上经常崩溃。

我还做了一个"CPU采样器“基准测试,结果如下:

(大图:单击此处)

令我困惑的是,实际内存显示为"22.32MB“,虚拟内存超过100 me,这与”分配基准“的结果有很大不同。

我也感到困惑的是,我的iPhone 3G,运行iOS 4.1,即使它有几乎完全相同的硬件规格与iPhone 2,可以很好地运行我的游戏。它是缓慢的,没有那么快,但它很少崩溃。

所以我的问题是:

  1. 我还能做些什么来识别iphone 2内存不足的问题呢?
  2. 系统库对“泄漏”分析结果的泄漏是一个问题吗?
  3. 为什么"CPU采样器“和”分配“显示不同的内存足印?我看对了吗?
  4. 为什么iPhone 3G的运行比iPhone 2G要平滑得多?是因为更新的iOS版本(4.1vs3.1.3)吗?
EN

回答 1

Stack Overflow用户

发布于 2011-07-01 07:07:51

1.我还能做些什么来识别iphone 2上内存不足的问题?

在iOS模拟器中运行您的应用程序,并使用硬件菜单项“模拟内存警告”项触发内存不足事件,您怀疑这些事件会崩溃。

在真正的设备上测试你的应用程序,但在启动之前,要启动尽可能多的其他应用程序,以减少可用内存的数量。在运行应用程序时,不时切换到app网格,以重新启动其他应用程序。这样,您将使系统生成真正的内存事件,但您不能选择哪个应用程序将接收到它们。

您可以自己生成OOM事件,但随后将运行不同的应用程序。开发时可能有用,但在接近发布时不建议使用。调试“助手”例程所引起的bug非常烦人.

2.系统库对“泄漏”分析结果的泄漏是一个问题吗?

它们可能是你代码的副作用。看看您的应用程序的哪一部分可能正在启动该系统服务,以及您是否发布/取消/关闭所有内容。

3.为什么"CPU采样器“和”分配“显示不同的内存脚印?我没看错吗?

不知道,但想知道:)

4.为什么iPhone 3G运行得比iPhone 2G平滑得多?是因为更新的iOS版本(4.1vs3.1.3)吗?

iPhone 3G比iPhone2拥有更好、更快、更多的硬件。因此,应用程序似乎运行得更快..。如果您的应用程序在更快的硬件中运行得太快,这可能是个问题。确保您的应用程序运行“恰如其分的速度”,不管硬件是另一个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6272084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档