为了防止将不必要的文件进行同步或者备份到iCloud,iOS开发者应该有选择性地存放应用程序相关的文件。存储大型文件的应用会减慢备份到iTunes或者iCloud的速度。这些应用还有可能会浪费用户大量的存储空间,从而导致用户不得不将他们删除,或者关闭iCloud的备份功能。为了防止上面的情况发生,我们需要在开发的时候遵守以下规范。

  • 将用户相关的数据存放在Documents/。所谓“用户相关的数据”,通常是指开发者希望暴露给用户的数据,也就是任何用户希望创建,引用,删除,或者编辑的 数据。对于一个画画的应用来说,用户数据就是包括用户所创建的图像文件。对于一个编辑器来说,用户数据是指用户编辑的文本文件。对于音频以及视频文件来说,用户数据就是下载的音视频文件。
  • 将应用产生的文件放在Library/Application support/目录。通常情况下,这个文件夹存放的内容应该是应用运行需要,但是无需暴露给用户的文件,比如一些配置文件,模板,或者从应用资源文件夹中加载的文件。
  • 任何可以被重复下载或者创建的文件,都需要从备份目录中清除掉。对体积较大的多媒体文件而言,这一点要尤为注意。如果开发者的应用下载了类似的音频或者视频文件,请确保这些文件不在备份的范围内。
  • 将临时数据放在tmp/目录下。所谓的临时数据,就是开发者不会一直需要的数据。开发者需要在不用这些文件的时候,将其及时删除,以确保这些文件不会占用用户设备的存储空间。当应用没有处在运行状态的时候,操作系统会定期对这个文件夹进行清理,所以,开发者不能将需要长期保存的数据放在这个文件夹下面。
  • 值得注意的一点是,系统有可能会对这个文件夹进行清理,以释放更多的磁盘空间,因此,开发者开发的应用必须能够重新下载或者创建相应的文件。