アプリを更新するたびに、Core Dataデータベース全体を完全に消去してから、再度セットアップしたいと思います。私はそうすることに成功していません。いろいろ試してみましたが、これが一番近いようです。いくつかのSO投稿を見つけましたが、どのソリューションも私の目的には機能しませんでした。
私はを使用しMagicalRecord
ています。これは、さまざまなオブジェクトを取得するためのいくつかの簡単な方法を提供します。これが私のコードです:
if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"buildVersion"] intValue] < [[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] intValue]) {
NSPersistentStore *store = [NSPersistentStore defaultPersistentStore];
NSError *error;
NSURL *storeURL = [NSPersistentStore defaultLocalStoreUrl];
NSPersistentStoreCoordinator *storeCoordinator = [NSPersistentStoreCoordinator defaultStoreCoordinator];
[storeCoordinator removePersistentStore:store error:&error];
[[NSFileManager defaultManager] removeItemAtPath:storeURL.path error:&error];
[[NSUserDefaults standardUserDefaults] setObject:[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] forKey:@"buildVersion"];
}
[MagicalRecord setupCoreDataStack];