iOS-此NSPersistentStoreCoordinator没有永久存储(损坏的文件)。
我在iOS应用程序中使用CoreData允许用户将一些数据保存到手机中,每当我进行更新时,我只会收到一到两个出现以下崩溃消息的用户:iOS-此NSPersistentStoreCoordinator没有永久存储(损坏的文件)。,ios,objective-c,core-data,Ios,Objective C,Core Data,我在iOS应用程序中使用CoreData允许用户将一些数据保存到手机中,每当我进行更新时,我只会收到一到两个出现以下崩溃消息的用户: Fatal Exception: NSInternalInconsistencyException 此NSPersistentStoreCoordinator没有永久存储(损坏的文件)。它无法执行保存操作 但是多次,这表明他们再也无法打开应用程序了,每次重新启动都会崩溃。这种情况只发生在一千个用户中的一个,最多两个,我不可能复制这种情况 - (NSMan
Fatal Exception: NSInternalInconsistencyException
此NSPersistentStoreCoordinator没有永久存储(损坏的文件)。它无法执行保存操作
但是多次,这表明他们再也无法打开应用程序了,每次重新启动都会崩溃。这种情况只发生在一千个用户中的一个,最多两个,我不可能复制这种情况
- (NSManagedObjectContext *)managedObjectContext
{
if (_managedObjectContext != nil) {
return _managedObjectContext;
}
NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
if (coordinator != nil) {
_managedObjectContext = [[NSManagedObjectContext alloc] init];
[_managedObjectContext setPersistentStoreCoordinator:coordinator];
}
return _managedObjectContext;
}
- (NSManagedObjectModel *)managedObjectModel
{
if (_managedObjectModel != nil) {
return _managedObjectModel;
}
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"modelName" withExtension:@"momd"];
_managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return _managedObjectModel;
}
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator
{
if (_persistentStoreCoordinator != nil) {
return _persistentStoreCoordinator;
}
NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"app name.sqlite"];
NSError *error = nil;
_persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
NSDictionary *options = @{
NSMigratePersistentStoresAutomaticallyOption : @YES,
NSInferMappingModelAutomaticallyOption : @YES,
NSSQLiteManualVacuumOption : @YES
};
if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
}
return _persistentStoreCoordinator;
}
这是我的AppDelegate中的CoreData堆栈
我做错了什么?您是否在某个时间点更新了模型,然后尝试保存?我在某个时间点更新了模型,尽管奇怪的是,这个问题之前已经存在。不过我只是做了一个轻量级的迁移,并遵循了在线教程——它对99.9%的用户都有效,这真的很奇怪。你知道吗?不幸的是,我从来没有遇到过同样的问题。最终完全重做了我的模型。