iphone – 从设备删除应用程序后无法使用nil模型创建NSPersisten
从设备删除我的应用程序后,我收到“无法创建具有nil模型的NSPersistentStoreCoordinator”错误.我在iPad设备上测试iPhone应用程序.我已经把这段代码用来检查我是否有AppDelegate.m中的文件:
- (NSManagedObjectModel *)managedObjectModel { if (__managedObjectModel != nil) { return __managedObjectModel; } NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"Name" withExtension:@"momd"]; if ([[NSFileManager defaultManager] fileExistsAtPath:[modelURL path]]) { NSLog(@"%@",[modelURL path]); //This is printed because file exists } __managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL]; return __managedObjectModel; } 问题是[NSManagedObjectModel initWithContentsOfURL]返回nil值. >使用此__managedObjectModel = [NSManagedObjectModel mergedModelFromBundles:nil]更改managedObjectModel实例化; 我一直在寻找解决方案几个小时,我仍然找不到它. 解决方法
最后,经过两天试图解决这个问题,我在这里找到了解决方案:
How to create the magic .xcdatamodeld folder / package? 我现在正在完成一个其他开发人员启动的项目,似乎他没有将最新的更改推送到repo,但是这些更改都在设备的应用程序中,当我删除应用程序时我删除了右边的. xcdatamodeld文件.问题是我在项目中只有一个MyApp.xcdatamodel文件,这就是拥有一个妈妈空文件夹的原因. 为了创建正确的数据模型层次结构,解决方案非常简单: >选择MyApp.xcdatamodel 这将MyApp.xcdatamodel文件嵌入到MyApp.xcdatamodeld中.现在,momd文件夹中有妈妈文件,应用运行正常.现在唯一的问题是我有两个MyApp.xcdatamodel,一个带有绿色选中图标,但两者都有相同的内容,所以没问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |