我的应用程序收到内存警告时该怎么办?当我的应用程序收到内存警告时该怎么办?
6
A
回答
8
这一切都取决于你的应用程序,通常你不必做任何特殊的事情,除非遵循Apple推荐的做法。
目前不可见的ViewControllers将获得didReceiveMemoryWarning
消息。默认情况下(调用[super didReceiveMemoryWarning]
)控制器的视图被卸载(释放,释放)。视图正在卸载时,视图控制器会收到viewDidUnload
,您应该在其中释放所有IBOutlet(或保留的UI元素)。只有这样才能完全释放视图并释放内存。
在你应该也是免费的尽可能多的数据,你可以在didReceiveMemoryWarning
- 如果你存储数据模型的某些部分在ViewController中,其释放,并在viewDidLoad
重建时,你的观点被再次加载,将被调用(当用户浏览回到这个控制器)。你也可以通知你的模型类来释放内存。
-1
如果您登录或写入任何其他文件,则可能是“磁盘”空间有问题。
此外,你应该检查内存泄漏。
0
在didReceiveMemoryWarning
中,应释放所有缓存或非必需项目以防止完全耗尽内存。
1
这真的取决于你的应用程序。
如果您的应用程序从Internet上下载并缓存大量内容,例如,您应该在收到警告时尽可能清除。
如果你的应用程序是一个OpenGL游戏,你可能有一个纹理/声音/数据管理器,它引用了一些未使用的数据,然后你想要释放它。 Cocos2D管理这种事情。
如果你的应用程序不是内存密集型的,你就会在某处发生内存泄漏,你应该1)通过Apple阅读内存管理编程指南2)使用仪器/泄漏。
相关问题
- 1. 当我收到内存警告时该怎么办?
- 2. 收到内存警告我的应用程序
- 3. 收到的内存警告Phonegap应用程序崩溃
- 4. 收到的内存警告
- 5. Mysql:当内存表达到max_heap_table_size时该怎么办?
- 6. 当存档我的应用程序时发出警告
- 7. 当应用程序不能使用content:// URI时,我该怎么办?
- 8. 当inptr == NULL时我该怎么办?
- 9. iPhone - 收到内存警告
- 10. 使用小内存时ipad应用程序内存警告
- 11. Windows 7阻止了我的应用程序。我该怎么办?
- 12. 运行时收到内存警告UIWebView
- 13. (iphone)当仪器显示“所有分配”只有7mb时,我的应用程序会收到内存警告?
- 14. 告诉程序没有找到保存数据时该怎么办NSUserDefaults,iPhone
- 15. 当我开始用尽存储空间时该怎么办?
- 16. 当我在Swift中使用PHAsset时,我总是收到内存警告
- 17. 失去使用应用程序的要求时该怎么办
- 18. 为什么我的iPhone应用程序在收到内存警告时会崩溃?
- 19. 我想现在开发metro应用程序。我该怎么办?
- 20. 如果我的iphone应用程序被拒绝,该怎么办?
- 21. 应用程序失败的密码验证。我该怎么办?
- 22. 如何捕捉应用程序中的警告崩溃报告:收到的内存警告
- 23. 使用performSelectorInBackground时接收内存警告
- 24. Facebook广告暂停,我该怎么办?
- 25. 当我的webapp服务器有bug时应该怎么办?
- 26. 如果应用程序缓存已满,该怎么办
- 27. 收到内存警告。当显示UIImagePickerController时级别= 1
- 28. 当我在iOS Analytics中看到我的应用程序崩溃时该怎么办?
- 29. 我该怎么办?
- 30. 等待应用程序编译时该怎么办?
谢谢!......最后一段是我一直在寻找的线索。 – Omer 2010-10-26 15:13:44