ios – 如何通过应用程序在App Store中测试核心数据迁移?

前端之家收集整理的这篇文章主要介绍了ios – 如何通过应用程序在App Store中测试核心数据迁移?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们有一个应用程序,目前在应用商店.它使用核心数据作为其持久性机制.我们有一个新版本准备好了,它有一些模式更改.具体来说,我们添加了一个新实体,并向现有实体添加了一个新属性.从我的理解和阅读,这是可以发生的最简单的迁移之一.没有现场删除,没有关系改变.数据模型由5个完全没有关系的实体组成.

我们已经对数据模型进行了版本化,并创建了一个.xcmappingmodel来处理迁移.我们正在通过添加以下选项来创建PersistentStoreCoordinator来处理迁移:

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
                     [NSNumber numberWithBool:YES],NSMigratePersistentStoresAutomaticallyOption,nil];

目前,我们已经使用以下过程成功测试了团队的几名成员:

>从设备和iTunes中删除应用程序的所有测试版本
>转到应用商店并下载当前版本
>对应用程序进行一些更改,以证明迁移成功
>将新的二进制文件(使用相同的包标识符签名)拖入iTunes并进行同步
>在设备上加载新版本,确认以前版本中所做的更改仍然存在,并且应用程序不会崩溃

我的问题是这样的:
有更容易/更好的方式来测试吗?我们关心的是,一旦应用程序出门,没有其他方法可以确保用户有最好的体验.

解决方法

我一直在为我的应用程序使用Core Data,升级了大约7次,从旧机型迁移到新机型.

每当我准备发布下一个版本,我总是通过使用模型映射来测试迁移.只要我使每个实体和源模型的属性与目标模型的对应实体和属性相匹配,我就没有遇到任何问题.

使用自己的项目文件进行测试与发布给客户的测试一样,所以您不必担心将旧模型迁移到新模型的测试是否有效.

换句话说,您的项目包的目标(将要归档和提交)与客户下载的目标相同.

我很自信这是这种情况,因为我已经用不同版本的我的应用程序进行了测试,没有问题.

猜你在找的iOS相关文章