WatchKit和MagicalRecord - 可能吗?

时间:2015-03-23 14:33:12

标签: watchkit magicalrecord-2.2

我通过MagicalRecord获得了一个带有Core Data的iOS应用程序。现在我想用WatchKit扩展程序扩展应用程序,因此需要访问MagicalRecord。这是可能的还是我必须切换到“原生”核心数据?如果我可以在WatchKit扩展中使用魔法记录,那将是完美的,但直到现在我都无法弄清楚。我甚至无法在共享的Cocoa Touch Framework中包含我的cocoapod ...(use CocoaPods 0.36.0 in CocoaTouchFramework with Swift

2 个答案:

答案 0 :(得分:1)

在WatchKit Extension中使用MagicalRecord不会有任何问题。您需要执行以下操作。

  1. 在WatchKit扩展程序的常规设置中,您需要将libPods.a添加到链接的框架和库中。
  2. enter image description here

    enter image description here

    1. 您需要让MagicalRecord在共享组文件夹中使用数据库,而不是其默认的app文件夹。为此,您需要在设置MagicalRecord

      时执行此操作
      NSString* dbPath = [self sharedAppGroupDirectory];
      dbPath = [dbPath stringByAppendingPathComponent:@"MyDatabaseName.sqlite"];
      NSURL* dbURL = [NSURL fileURLWithPath:dbPath];
      [MagicalRecord setupCoreDataStackWithAutoMigratingSqliteStoreNamed:(id)dbURL];
      
    2. 您可以使用此功能获取共享的应用程序组目录。

      NSFileManager *fm = [NSFileManager defaultManager];
      NSString *appGroupName = @"group.com.mygroup";
      NSURL *groupContainerURL = [fm containerURLForSecurityApplicationGroupIdentifier:appGroupName];
      NSString* path = [groupContainerURL filePathString];
      

答案 1 :(得分:0)

在个人资料档案中添加一行

link_with 'yourApp', 'yourAppExtension'

然后在终端上运行命令行

pod install