Iphone 在ios中存储应用程序数据的最佳位置是什么?

Iphone 在ios中存储应用程序数据的最佳位置是什么?,iphone,ios5,nsdocumentdirectory,Iphone,Ios5,Nsdocumentdirectory,我认为与ios存储指南相关的问题很多。我找到了。但我不想对此再作澄清,因此: 我的文件很少存储在NSDocumentDirectory中。。像我的数据库文件一样,一个Plist文件和一些临时的音频和视频文件 在ios

我认为与ios存储指南相关的问题很多。我找到了。但我不想对此再作澄清,因此:

我的文件很少存储在NSDocumentDirectory中。。像我的数据库文件一样,一个Plist文件和一些临时的音频和视频文件

在ios<5.0中存储文件没有问题。。但在提到节目问题时

在ios 5.1中有不同的方法,而iso 5.0.1中有不同的方法。。和ios 5.0不允许使用文件来阻止备份

我的问题是:

  • 我应该通过检查ios 5.1和5.0.1的ios版本来实现这两种方法吗
  • 我是否必须为我的数据库文件和plist文件使用Caches目录,而不是NSDocument目录,因为在ios 5.0中没有防止在icloud上备份文件的选项
  • iOS将在必要时从Caches目录中删除您的文件,因此,如果我将数据库文件存储在Caches目录中,如何存储它。我不想丢失数据
  • 如链接中所述:

    无法从iOS 5.0上的备份中排除数据。如果您的应用程序必须支持iOS 5.0,那么您需要将应用程序数据存储在缓存中,以避免备份该数据。iOS将在必要时从缓存目录中删除您的文件,因此如果删除数据文件,您的应用程序将需要正常降级。

    我不希望我的数据库和plist文件在任何情况下都被删除


    任何建议。

    您可以使用Documents文件夹保存数据库和plists。由于不希望备份数据库,因此可以使用文件属性对其进行标记。 还是我误解了你

    更新:

    不要使用不推荐的方法将文件标记为非返回,只需使用提供的新方法即可。请看这里如何做到这一点。
    正确的位置仍然是Dokuments文件夹,因为那里的文件不会被删除。

    您可以使用Documents文件夹将数据库和plists保留在适当的位置。由于不希望备份数据库,因此可以使用文件属性对其进行标记。 还是我误解了你

    更新:

    不要使用不推荐的方法将文件标记为非返回,只需使用提供的新方法即可。请看这里如何做到这一点。
    正确的位置仍然是Dokuments文件夹,因为那里的文件不会被删除。

    使用文件属性意味着哪个属性以及如何删除?如果您指向我在问题中提到的链接中指定的方法,即
    -(BOOL)addSkipBackupAttributeToItemAttribute:(NSURL*)URL
    ,请查看我问题的第2点和第3点。希望我现在明白了。:)使用文件属性意味着哪些属性以及如何使用?如果您指向我在问题中提到的链接中指定的方法,即
    -(BOOL)addSkipBackupAttributeToItemAttribute:(NSURL*)URL
    ,请查看我问题的第2点和第3点。希望我现在明白了。:)