2017-07-10 5 views
0

Im Gegensatz zu iOS werden die Anwendungen applFillFinishLaunching und applicationDidFinishLaunch der Anwendungsdelegierten nach ViewDidLoad auf dem ursprünglichen NSViewController aufgerufen.Festlegen der Realm-Schemaversion in der MacOS-App

Main.c (oder main.swift) scheint im Ruhestand zu sein und ohne AppDelegate zu viel zu ändern, ist der einzige Ort, an dem ich denken kann, schemaVersion aufrufen in der ViewDidLoad der ursprünglichen Ansicht Controller, die mir hässlich scheint.

Was ist die empfohlene Methode zum Festlegen von Realm's schemaVersion in MacOS-Anwendungen, die in Swift geschrieben wurden?

Antwort

2

Die init() des MacOS AppDelegate scheint gut zu funktionieren.

class AppDelegate: NSObject, NSApplicationDelegate { 

    override init() { 
     super.init() 

     let info = Bundle.main.infoDictionary! 
     let version = info["RealmSchemaVersion"] as! UInt64 
     Realm.Configuration.defaultConfiguration.schemaVersion = version 
    } 
    ... 
} 
Verwandte Themen