J'ai créé une application sur laquelle je reviens il y a environ un an et demi. C'est le projet sur lequel j'ai coupé mes dents de Swift et évidemment beaucoup de choses ont changé depuis, à la fois dans la langue et dans mes capacités de Swift.Prévention d'un plantage de CoreData pour la mise à niveau des utilisateurs
Hier, pour la première fois, j'ai mis à jour mon modèle CoreData unique pour ajouter un attribut de chaîne optionnel. J'ai fait le bit de génération de fichier et j'ai vérifié dans la colonne de l'inspecteur que le nouveau modèle de données est sélectionné de manière appropriée.
Sur mon simulateur et les appareils de test, j'ai besoin de supprimer l'ancienne version de l'application pour installer la nouvelle version ou je reçois un plantage. Je suppose que c'est juste une partie du processus de l'environnement de développement. Comment puis-je m'assurer que les utilisateurs de mise à niveau n'auront pas à supprimer et à réinstaller lorsqu'ils effectueront une simple mise à jour depuis l'App Store? Je suppose que Xcode/CoreData/Apple ont ce traitement avec des scripts internes ou des processus qui sont invisibles à l'utilisateur, "ça marche". Mais je voulais publier ceci ici pour comprendre s'il y a quelque chose d'autre que je dois faire pour assurer une transition en douceur de v1 à v1.1 pour l'utilisateur.
Tout ce que j'ai fait était une colonne de chaîne optionnelle, comme je l'ai mentionné. Je suppose que toutes les données utilisateur existantes seront migrées vers le nouveau schéma avec le nouveau champ nil
.
Toutes les pensées ici seraient très bien accueillies et appréciées. Merci!
Vous avez des choix à faire à la façon dont vous souhaitez migrer de l'ancienne version à la nouvelle, je vous suggère de lire ici un peu : https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CoreDataVersioning/Articles/vmLightweightMigration.html –
Merci, allez jeter un oeil –
Ce crash ne fait pas partie du processus de développement. Vous devez corriger cela avant la publication. –