iOS7到iOS8应用程序文件的迁移

roc*_*eye 4 migration filesystems ios ios7 ios8

我目前正在iOS8上测试我的应用程序.在纯iOS8上一切都运行良好,但是当iOS8将公开发布时,我正在努力应对iOS7中的App文件迁移.由于我的应用程序使用了几个"标准目录"(文档,应用程序支持,...),我想确保迁移顺利进行.

iOS8上的应用程序文件系统结构已更改(请参阅iOS beta 4发行说明文件系统编程指南).

当iOS8将安装在设备上时,我猜所有以前安装的应用程序和所有相关文件(在Documents,Application Support,...中)都将被重新组织以匹配新结构.

你们有没有关于在iOS7到iOS8升级期间会发生的(详尽的)变更列表的线索?我找不到关于这个主题的任何文件.有没有办法测试/模拟iOS7应用程序沙箱迁移到新的iOS8沙箱结构?

谢谢

奖励问题:操作系统升级时应用程序GUID是否会发生变化?

San*_*aus 10

应用程序容器的文件系统布局已在磁盘上更改.

而不是依赖于硬编码的目录结构,使用该类的 NSSearchPathForDirectoriesInDomains函数或 URLForDirectory:inDomain:appropriateForURL:create:error:方法 NSFileManager.

使用URLForDirectory:inDomain:appropriateForURL:create:error:方法NSFileManager:

NSFileManager *yourFileManager = [NSFileManager defaultManager];
NSURL *urlForSomeDirectory = [yourFileManager URLForDirectory:NSDocumentDirectory inDomain:NSAllDomainsMask appropriateForURL:nil create:YES error:nil];
Run Code Online (Sandbox Code Playgroud)

如果您当前正在使用此方法,则无需更改任何内容.

您可以替换NSDocumentDirectory其他许多的常量.NSError **如果您想捕获错误,您可能还想用a 代替最后一个参数.

奖金问题:它不应该,但你永远不会知道.