【问题标题】:How to tell users how much memory your iOS application needs如何告诉用户你的 iOS 应用程序需要多少内存
【发布时间】:2011-05-14 12:16:59
【问题描述】:

我正在开发一个 iOS 应用程序,它(与其他任何应用程序一样)需要一定数量的可用内存才能正常运行。在我的情况下 - 至少 4MB,我不能使用比这更少的。这是一个相当小的数量,但有几次(至少在我的设备上)我只得到了 2MB 的空闲空间,程序崩溃了。您认为告诉用户您需要多少内存的最佳方式是什么。我知道获取当前可用内存的代码,但是即使我告诉用户(比如在用户启动程序时在 UIAlertView 中)他运行不足,我可以建议他做什么来释放更多内存(除了转动关闭和打开设备)。有什么想法吗?

【问题讨论】:

  • 您从哪里获得这些内存大小数字,对象分配工具或内存监视器之一?后者会让您更准确地读取应用程序的总内存大小(可能大于 4 MB)。
  • 你好,Brad :) 我使用 Instrument 的 Object Allocations,甚至没有听说过 Memory Monitor :) 我会检查并试一试 :) 谢谢 :)

标签: ios memory alert


【解决方案1】:

您的应用正在哪些类型的 iPhone 设备上进行测试?我想 iOS 必须做好它的工作来为你释放足够的内存或杀死所有后台应用程序以便它可以拥有更多的内存

【讨论】:

  • 感谢您的快速响应 :) 好吧,我在 iPod Touch 2G 上进行了测试。我认为 iPad 或 iPhone 4 的内存不会成为问题,但对于内存较少的 iPhone 3G/3GS 来说可能会有问题。
  • iPhone 3G/3GS 应该没有问题,它有大约 128-256MB 的 RAM,通常至少有一半可用
  • 确实如此,但是当用户启动和退出不同的程序时,iPhone 并不总是清除他们正在使用的整个内存,并且可用空间会减少。 iPod Touch 2G 也有 128MB 的内存,但有几次可用内存只有 2MB 甚至更少。
【解决方案2】:

在较旧的设备上,您不能真正依赖获得超过 8MB 的数据。 4MB 是一个很好的目标,如果您通过分析确定这就是您所需要的,那么您应该没问题。

但是,我认为这里的概念是,如果您收到内存警告,您就不会因为这些类型的事情而打扰用户。我自己会觉得这很烦人。最好限制您的应用程序的活动或限制您正在执行的任何占用大量内存的操作。

【讨论】:

  • 我完全同意这一点 - 我认为向用户展示有关应用程序实现细节的消息与 iOS 试图实现的一切背道而驰。
  • 你好,slf :) 我知道这很烦人,但我没有看到任何其他选择。问题是我正在开发一个闹钟,当闹钟响起时它需要 4MB。所以,如果那时用户没有足够的可用内存,应用程序终止,并且没有播放警报声,因此用户上班迟到了:) 所以我需要以某种方式通知他潜在的故障(我更喜欢那个在 AppStore 上得到差评):) 谢谢 :)
  • 播放闹钟声音需要4MB?孩子们。我记得当我们的整个程序只有 4KB 时,我们很喜欢它。 :-)
猜你喜欢
  • 2017-01-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-12
  • 1970-01-01
  • 1970-01-01
  • 2021-11-21
相关资源
最近更新 更多