gpt4 book ai didi

ios - MagicalRecord:删除整个数据并重新设置核心数据堆栈

转载 作者:可可西里 更新时间:2023-11-01 05:41:56 26 4
gpt4 key购买 nike

对于每次应用程序更新,我都想彻底删除我的整个 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];

最佳答案

NSPersistentStore+MagicalRecord 类别允许您获取持久存储的 URL:

+ (NSURL *) MR_urlForStoreName:(NSString *)storeFileName;

您可以使用来自此调用的 URL 来使用 NSFileManager 删除持久存储 SQLite 数据库。

关于ios - MagicalRecord:删除整个数据并重新设置核心数据堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12344138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com