根据 Apple 的 iOS 应用程序编程指南,应用程序保留文档和库目录。我的问题是库目录到底保留了什么?它是否也复制用户创建的文件/数据(如果存储在库目录中)或仅保留首选项和应用程序设置?
我的应用程序当前将用户数据存储在库目录中,用户在更新到新版本时丢失了数据。我不想再发生这种情况。
用户创建的文件和数据应存储在文档文件夹中。该文件夹中的内容也使用 iTunes 进行备份。
您不仅应该将用户数据保存在文档目录中。
/**
Returns the path to the application's Documents directory.
*/
- (NSString *)applicationDocumentsDirectory {
return [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
}
但是您也应该只存储位于该目录中的文件的相对路径。如果您存储绝对路径,则您的应用在更新后将找不到数据。