Ream swift 迁移仅在设备上崩溃

Ream swift migration crash only on device

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

迁移代码如下:

    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
}

但是如果我从 TestFairy 或 TestFlight 安装应用程序,应用程序会在启动时崩溃。当我删除迁移时一切正常,所以迁移导致了问题。

符号化崩溃报告没有帮助,崩溃发生在 didFinishLaunchingWithOptions 开始时。

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

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

每次您将应用程序分发到 Test FlightAppStore

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

重新安装它

看看documentation