首页 > 解决方案 > 将 Realm.Configuration 放入 shouldRestoreApplicationState 是否安全?

问题描述

我正在实施应用程序恢复功能。但我发现在viewDidLoad被调用之前didFinishLaunchingWithOptions被调用。我必须从这里的数据库中读取一些数据。所以它总是在try! Realm(). 无论如何,这就是我现在的做法。

    var realmConfigured = false

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

    func application(_ application: UIApplication, shouldRestoreApplicationState coder: NSCoder) -> Bool {
        print("restoring")

        configureRealm()
        return true
    }

    func configureRealm(){
        guard !realmConfigured else { return }

        realmConfigured = true

        let config = Realm.Configuration(...)

        Realm.Configuration.defaultConfiguration = config
    }

到目前为止它工作正常。有一个更好的方法吗?

标签: iosswiftrealm

解决方案


推荐阅读