【发布时间】:2011-04-14 17:00:04
【问题描述】:
有没有办法通过 iTunes 应用更新来更新捆绑包中的已修改 plist 文件?
我有一个应用程序,它以数组和字典的形式将一些数据存储在 plist 文件中。在某些更新中,我已将更多数组项添加到 plist 文件中,但似乎在更新应用程序时,除非用户删除应用程序并重新安装它,否则不会复制/更新新的 plist 文件。
如何让应用程序用新的 plist 文件的本地副本更新?
【问题讨论】:
有没有办法通过 iTunes 应用更新来更新捆绑包中的已修改 plist 文件?
我有一个应用程序,它以数组和字典的形式将一些数据存储在 plist 文件中。在某些更新中,我已将更多数组项添加到 plist 文件中,但似乎在更新应用程序时,除非用户删除应用程序并重新安装它,否则不会复制/更新新的 plist 文件。
如何让应用程序用新的 plist 文件的本地副本更新?
【问题讨论】:
您无法更新捆绑包中的任何内容。如果您希望能够更新它,请将 plist 保存在文档目录中。
NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
NSString *documentsDirectory = [arrayPaths objectAtIndex:0];
使用商店更新应用时不会删除文档目录中的文件。
【讨论】:
版本化的 .plist 文件?例如。 MyApp-YYYYMMdd.plist
【讨论】:
我在一个应用中遇到了类似的问题。我要解决的是当应用程序在应用程序委托中获得 willEnterForeground 通知时检查应用程序是否已加载旧版本或新版本的 plist 文件,然后从包中加载新文件并将其保存到文档中目录。
【讨论】: