我正在开发一个使用我也创建的静态库的 iOS 应用程序。
我想在 iOS 应用程序中使用的库中有一个数据模型。
正常的 Apple 提供的 NSManagedObjectModel getter 如下所示:
- (NSManagedObjectModel *)managedObjectModel
{
if (_managedObjectModel != nil)
{
return _managedObjectModel;
}
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"Honeycomb" withExtension:@"momd"];
_managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return _managedObjectModel;
}
我已经修改了 getter 以查看我的静态库资源包以获取数据模型:
- (NSManagedObjectModel *)managedObjectModel
{
if (_managedObjectModel != nil)
{
return _managedObjectModel;
}
NSURL *honeycombBundleURL = [[NSBundle mainBundle] URLForResource:@"HoneycombResources" withExtension:@"bundle"];
NSURL *modelURL = [[NSBundle bundleWithURL:honeycombBundleURL] URLForResource:@"Honeycomb" withExtension:@"momd"];
_managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
return _managedObjectModel;
}
我得到了正确返回的模型的 URL,但是当我查看 URL 指向的位置时,唯一的文件是“Versioninfo.plist”——没有实际的 .mom 文件!
我已经按照本文http://www.galloway.me.uk/tutorials/ios-library-with-resources/中的说明为静态库设置了资源包
当我在文件系统中浏览到它时,所有其他资源(.nib 和 .png)都正确显示在包中,我只是缺少 .mom 文件。有什么建议么?