2016-10-12 3 views
0

Ich habe eine bestehende App. Ich habe schon einmal eine leichte Migration durchgeführt, daher bin ich nicht völlig unbekannt. Ich habe jedoch kürzlich an meiner App gearbeitet und ohne zu überlegen zwei neue Entitäten hinzugefügt, ohne eine neue Core Data Model-Version hinzuzufügen.Leichte Migration notwendig?

Wenn ich jedoch die App über Xcode auf mein Telefon und mehrere Testbenutzer-Telefone hochgeladen habe, hat das keine Probleme verursacht.

Ist es möglich, dass ich keine leichte Migration durchführen muss?

+0

Haben Sie bereits erfolgreich Instanzen dieser neuen Entitäten hinzugefügt? –

+0

@ TomHarrington überraschend, ja. So scheint es, dass es für mein Handy irgendwie und für die Testtelefone funktioniert hat. Ich weiß jedoch nicht, ob es einen Unterschied zwischen diesen gibt und wenn Benutzer das Update über das App Store-Update erhalten. Machst du? –

Antwort

1

Wenn Sie Ihre App für eine Lightweight-Migration eingerichtet haben, haben Sie wahrscheinlich die folgenden Zeilen in Ihr CoreData-Framework eingefügt. Diese Einstellungen aktivierten die Optionen, die leichten Migrationen unterstützen (diese sind von einem Swift 3.0 app, so dass sie ein wenig variieren können):

NSMigratePersistentStoresAutomaticallyOption as NSObject: true,     
NSInferMappingModelAutomaticallyOption as NSObject: true 

Wenn Sie diese Zeilen an der Stelle gelassen haben, dann wird Coredata weiterhin leicht Migrationen durchzuführen Wenn Sie dies richtig machen, sollten Sie in Ordnung sein, solange Sie nichts tun, was Ihrerseits mehr Aktionen erfordert - wie den Namen einer Entität oder Eigenschaft zu ändern.