我正在处理的应用程序通常使用Core Data中的单个SQL存储来保存应用程序的工作数据集。但是,可以有任意数量的小型独立商店,这些商店起源于
这些将始终包含一个sqlite文件(WAL已关闭)。可以随时重新下载应用内购买,但导出的数据可能会永久丢失(因为他们可能会选择在导出后永久删除数据)。
直观地说,由于导出的数据可能无法重新创建,因此它应该位于documents文件夹的子目录中。但我不确定苹果是否同意这一点。
我不知道应该保存下载的所购内容的位置,因为从技术上讲,它可以随时重新下载。
所以,我的问题是,我应该在iOS文件系统中放置这些(iOS7及更高版本)。
答案 0 :(得分:1)
没有关于通过IAP购买的内容应该在文件系统上的哪些内容的官方公开指导。但是,数据存储指南反馈的经验表明:
NSDocumentsDirectory
应仅包含用户创建或编辑的数据NSDocumentsDirectory
属性,非用户数据仍然可以存储在NSURLIsExcludedFromBackupKey
中。一般来说,你应该尽量避免这样做。如果导出的数据是由用户启动的操作导出的,那么此时的数据属于"对于用户,将导出的数据存储在NSDocumentsDirectory
中应该没问题。如果您有任何疑问,请将其存储在应用程序支持目录或缓存目录中。请注意,在低空间条件下,系统可能会清除数据。