【问题标题】:My app closes without any warning or error message我的应用程序在没有任何警告或错误消息的情况下关闭
【发布时间】:2009-09-28 14:47:38
【问题描述】:

我正在使用 openGL 为 iPhone 编写一个益智游戏。

有一个非常奇怪的“错误”(我不确定它是什么)......每当我在短时间内多次触摸屏幕时,我的应用程序都会关闭,而不会发出警告或错误.

可能是什么原因?,我猜这与记忆有关,但我想知道。

编辑: 我也认为这是因为每次用户触摸屏幕或移动手指时我都会调用多个函数。

【问题讨论】:

  • 你说的是模拟器还是iPhone?
  • 这种情况只发生在 iPhone 上,模拟器不会发生。
  • 是否调用了委托上的低内存方法?

标签: iphone opengl iphone-sdk-3.0


【解决方案1】:

听起来你的内存不足了。

一些可能会有所帮助的快速提示:

  • 使用 Instruments 检查您的内存配置文件。如果您看到随着时间的推移稳定倾斜,则可能是内存泄漏,或者分配的内存超出您的需要的效率低下的算法。
  • 使用静态分析器帮助检查泄漏,例如Clang
  • 图像和与图像相关的文件特别需要内存,因此请关注它们的效率。在 OpenGL 中处理纹理时,请使用 PVRTC 格式,它提供了出色的压缩效果。
  • didReceiveMemoryWarning: is your friend - 也就是一个很好的机会扔掉你记忆中不需要的任何东西。不过,最好始终保持内存效率。

【讨论】:

    【解决方案2】:

    尝试设置NSUncaughtExceptionHandler。您可能还想设置一个signal handler

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-03
      相关资源
      最近更新 更多