iphone - 一段时间后应用程序用户界面消失

标签 iphone ios memory-management

基本上我得到了我编写的这个应用程序,并且出于某种原因在不同的 ios 设备上表现不同。

在我的 Itouch 上,它可以正常工作很长时间,没有问题,但在具有最新固件的 iPhone 4 上,UI 会在一段时间后降级,即一些图像开始卸载,我检查了内存分析器,但它从未超过4mb。也永远不会调用内存警告。甚至锁定屏幕也失去了数字键盘,变得半透明。

在此之前,屏幕会闪烁一点。

该应用程序基本上是将图像上传到某个数据库,在此之前它会运行几次 jpeg 压缩以确保图像接近 50kb,因此如果您从 500kb 的图像开始,它会减少它压缩比,直到图像接近 50kb。您认为这可能会导致问题吗?

我无法在 4.2 的 itouch 上重现此问题,但在 iphone4 上,它似乎会发生。

任何指针都会很好。仪器显示最多 64 字节的 1-2 次小泄漏,并且堆从未超过 4mb。

最佳答案

如果不查看您的实际代码,很难知道。不过对我来说,我会先修复漏洞,看看是否能改善情况。就 iOS 设备而言,您的 iPhone 4 的 RAM 比触摸屏多,所以我敢打赌这不是内存可用性问题,因为您的触摸屏应该是第一个出现问题的。您没有收到内存警告这一事实支持了这一点。

在我的脑海中,我不知道问题可能是什么;我自己没听说过。不幸的是,没有示例代码,很难说出发生了什么。

您是否在使用自定义界面元素?降级是否也发生在 Apple UIKit 元素上,例如 UISlider?

这些图像是如何加载的?如果您使用延迟加载,则您的实例化代码可能存在错误。

关于iphone - 一段时间后应用程序用户界面消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7054066/

相关文章:

ios - 是否可以通过 iOS 上的 Safari 进行网状网络连接?

ios - 如何在 AdMob 中添加中介网络?

ios - 在 Firebase iOS SDK 中,每次删除子项时都会触发 .childAdded。我怎样才能阻止这个?

ios - UINavigationBar 彩色动画与推送动画同步

ios - Swift调用Foundation函数错误时如何抛出异常?

iphone - 推荐用于iPhone开发的线程层?

iOS自定义UIView设计: init vs layoutSubviews

R:如何在不耗尽内存的情况下绑定(bind)两个巨大的数据帧

c - 分配和重新分配结构及其元素

memory-management - Rust 分配内存布局与大小不一致