令快速迁移崩溃仅在设备上

时间:2019-02-07 14:53:01

标签: ios swift realm realm-migration

我必须通过在一个对象上添加一个字段来更新我的领域架构。

以下是迁移代码:

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

    let config = Realm.Configuration(
        schemaVersion: 4,

        migrationBlock: { migration, oldSchemaVersion in
            if (oldSchemaVersion < 4) {
                print("Updating Realm schema...")
                // Nothing to do!
            }
    })
    Realm.Configuration.defaultConfiguration = config
    let realm = try! Realm()

    // ... rest of code
}
  • 在模拟器上运行就可以了
  • 从xCode在设备上运行就可以了

但是,如果我从TestFairy或TestFlight安装应用程序,则该应用程序将在启动时崩溃。当我删除迁移后,一切都很好,所以迁移会导致问题。

符号化崩溃报告无济于事,崩溃是在didFinishLaunchingWithOptions开始时进行的。

尝试了各种导出选项更改(位码等),但结果相同。

您是否看到没有从xCode未安装更新的应用程序时迁移失败的任何原因?

1 个答案:

答案 0 :(得分:1)

每次将应用程序分发到 Test Flight AppStore

您应该向方案中添加一个,例如,如果您的应用程序是最近构建的
 在测试飞行中具有4的架构号,如果您对领域类进行了任何更改,但是如果您在本地尝试进行测试,则新版本应该为5只需删除应用程序并通过Xcode重新安装。

看看documentation