同步iOS小部件和包含应用程序的CoreData上下文
我目前正在为我的一个应用程序编写“今日”扩展。在扩展中,用户可以为文章设置书签。我在应用程序中有一个ViewController,它显示所有书签,并连接到一个NSFetchedResultsController 我想实现的是,如果用户通过小部件添加书签,它会自动在应用程序中弹出。我尝试了同步iOS小部件和包含应用程序的CoreData上下文,ios,objective-c,core-data,ios-extensions,Ios,Objective C,Core Data,Ios Extensions,我目前正在为我的一个应用程序编写“今日”扩展。在扩展中,用户可以为文章设置书签。我在应用程序中有一个ViewController,它显示所有书签,并连接到一个NSFetchedResultsController 我想实现的是,如果用户通过小部件添加书签,它会自动在应用程序中弹出。我尝试了[self.managedObjectContext reset]和NSManagedObjectContextDidChangeNotification——但都没有成功。当我完全退出应用程序并再次打开它时,小部
[self.managedObjectContext reset]
和NSManagedObjectContextDidChangeNotification
——但都没有成功。当我完全退出应用程序并再次打开它时,小部件所做的更改是可见的,但如果应用程序仍在后台运行,则不会
有什么想法吗?要在应用程序及其扩展程序之间共享数据,您需要创建一个应用程序组。 这并不困难,但需要采取不同的步骤:
-applicationDocumentsDirectory
方法以指向共享容器NSUserDefaults
,以保存应用程序和扩展之间的转换数据。
一个示例项目和一个教程。我已经有了一个带有共享sqlite数据库的工作应用程序组。我唯一的问题是,运行中的应用程序只有在完全重新启动时才能获取新信息。当它继续在后台运行时,它不会应用在widgets上下文中所做的更改。您找到解决方案了吗?