首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iMessage扩展与CoreData

iMessage扩展与CoreData
EN

Stack Overflow用户
提问于 2016-09-12 12:40:04
回答 1查看 702关注 0票数 1

我正在尝试从一个CoreData中阅读iMessage Extension (MSMessagesAppViewController),但是由于没有AppDelegate,所以也没有managedContext

有没有人知道这是可能的?是否有可能“实例化我的应用程序的AppDelegate”或类似的东西?

更新:如何访问应用程序中的核心数据----扩展:解决方案是使用AppGroup容器。

EN

回答 1

Stack Overflow用户

发布于 2016-09-22 16:50:58

使用Core数据与是否存在应用程序委托无关。它们是两种不同的东西。您可以将它们放在上,但是Core和应用程序委托都不需要这样做。这样做甚至不是很好的设计。应用程序代表的工作是响应应用程序生命周期事件,如启动、进入后台等,同时也参与管理应用程序数据的单独工作也是糟糕的设计。

如果您在Xcode中创建一个新项目,并选中“”框,则Xcode将在app委托类中包含用于设置应用程序核心数据的方法。但是,该代码可以在任何类中运行。要求该代码在该类中的应用程序委托没有什么特别之处。仅仅因为Xcode将该代码放在该类中,并不意味着它是必需的。如果您需要在应用程序扩展中使用Core数据,这就是您要做的。

一种常见的方法是创建一个新的类来管理核心数据。将所有的核心数据堆栈管理代码放在那里,而不是在应用程序委托中。应用程序委托可能会在应用程序中创建这个类的实例。在应用程序扩展中,可以在扩展类型需要的地方实例化类。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39450558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档