CoreData, как определить новую версию приложения, чтобы я мог обновить модель?
У меня есть очень простая модель, которая создается, когда приложение запускается впервые и заполняется содержимым списка. Мне нужно будет заново создать модель, когда будет загружено и запущено обновление приложения. Я знаю, что вы можете создавать версии coredata, но я не предвижу, что сама модель изменится. Мне просто нужно пройти через существующий массив объектов и добавить новые объекты из списка. Для этого мне нужно проверить номер версии приложения и как-то обнаружить, что он отличается от модели на устройстве.
2 ответа
Взгляните на этот метод в NSPersistentStore
+ (BOOL)setMetadata:(NSDictionary *)metadata forPersistentStoreWithURL:(NSURL *)url error:(NSError **)error
Вы можете установить произвольный словарь пар ключ / значение. Сделайте один, чтобы представить вашу версию. Затем вы можете загрузить этот словарь с помощью:
+ (NSDictionary *)metadataForPersistentStoreWithURL:(NSURL *)url error:(NSError **)error
Если вы хотите версию приложения, просто проверьте Bundle version
введите файл info.plist.