0
  1. 我正在尝试向我的应用程序添加今天的扩展。
  2. 我的应用程序包含一个 cocoaPod(我们自己的 cocoapod),它为我们的应用程序设置了核心数据模型。

  3. 我设置了今天的扩展来使用我们的 pod。

  4. 在运行今天的扩展目标时,我收到此行的错误。

NSManagedObjectModel *managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:[[NSBundle mainBundle] URLForResource:@"MyModel" withExtension:@"momd"]];

错误是[[NSBundle mainBundle] URLForResource:@"MyModel" withExtension:@"momd"]零。

我已经在开发者商店中为应用程序和扩展设置了组。想知道为什么它在应用程序包中找不到数据模型吗?

- 谢谢

4

1 回答 1

0

您必须为今天的扩展创建 app-group 并将 storeURL 更改为包含在您的共享 App Group 文件夹中的位置:

NSURL *directory = [[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"group.YourGroupName"];
NSURL *storeURL = [directory URLByAppendingPathComponent:@"YourAppName.sqlite"];

快速:https ://medium.com/@maximbilan/ios-shared-coredata-storage-for-app-groups-447b4ba43eec#.au9abo8v5

对于 Objective-C:https ://github.com/atomicbird/iOS-Extension-Demo

于 2016-11-01T04:21:10.453 回答