如何在更新 iphone 应用程序时从库目录中保留用户数据?
Posted
技术标签:
【中文标题】如何在更新 iphone 应用程序时从库目录中保留用户数据?【英文标题】:How to preserve user data from library directory on updating the iphone app? 【发布时间】:2011-06-30 07:13:24 【问题描述】:根据 Apple 的 ios 应用程序编程指南,应用程序保留 documents 和 library 目录。我的问题是库目录到底保留了什么?它是复制用户创建的文件/数据(如果存储在库目录中)还是只保留 首选项 和应用程序设置?
我的应用当前将用户数据存储在库目录中,用户在更新到新版本时丢失了数据。我不想再发生这种事了。
【问题讨论】:
【参考方案1】:用户创建的文件和数据应存储在文档文件夹中。该文件夹中的内容也使用 iTunes 备份。
【讨论】:
【参考方案2】:您不仅应该将用户数据保存在文档目录中。
/**
Returns the path to the application's Documents directory.
*/
- (NSString *)applicationDocumentsDirectory
return [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
但您也应该只存储位于该目录中的文件的相对路径。如果您存储绝对路径,则您的应用在更新后将找不到数据。
First App Update, User Data Lost (was stored in Documents directory)
【讨论】:
以上是关于如何在更新 iphone 应用程序时从库目录中保留用户数据?的主要内容,如果未能解决你的问题,请参考以下文章