繁体   English   中英

iOS - 为应用保留最少的可用磁盘空间

[英]iOS - Reserve a minimum amount of free disk space for an app

我的应用程序必须确保始终有最小数量(可能是5-10 MB)的可用磁盘空间,以使其正常运行。 我必须将重要数据保存到文件中,否则一切都将被破坏。

主要问题是:如果用户下载我的应用程序并且他确实有足够的可用磁盘空间(他没有在我第一次启动创建数据时)该怎么办?

当他现在启动应用程序时,我尝试做一些初始设置 - 在这里我必须写2-3 MB文件,这个空间必须是免费的。

我能做些什么来实现这个目标?

你可以做两件事:

首先,当您的应用程序启动时,您可以使用NSFileManager.attributesForFilesystemofPath:找到可用空间NSFileManager.attributesForFilesystemofPath: 如果空间量很小(并且5 MB可用空间非常低 ,则可以警告用户,甚至可能拒绝在您的应用中启动需要此可用空间的操作。

其次,您可以创建一个临时文件。 如果您知道需要5MB存储空间,那么也许您可以分配5MB文件并将该文件用于存储。

您没有指定需要存储在磁盘上的内容,但如果它是例如一个文件,那么您可以在5MB暂存文件上写入此数据,而不是打开新文件。

这需要一些额外的簿记,但您确实可以获得数据空间。

总之,你不能。 您需要编写代码以进行初始启动,检查是否有足够的磁盘空间来执行初始设置,如果没有则显示错误。 我之前没有尝试在iOS上这样做,所以我不确定沙盒是什么让你能够做到这一点。 我必须在iOS文件系统docs中阅读。 这就是我建议你做的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM