Ios UIApplication.sharedApplication不可用

Ios UIApplication.sharedApplication不可用,ios,swift,ios-app-extension,ios9.1,xcode7.1,Ios,Swift,Ios App Extension,Ios9.1,Xcode7.1,我试图从UIViewController获取对我的应用程序委托的引用,但我不断收到以下错误消息: “sharedApplication()”不可用:请在适当的情况下使用基于视图控制器的解决方案 我已经阅读了所有关于这类消息的文章,但我的问题似乎无关,因为我没有使用任何第三方框架。虽然Today扩展是我的应用程序的一部分,但发生错误的类是完全无关的。我甚至创建了一个全新的类,并不断得到相同的错误: 当我在操场上做同样的事情时,效果很好。我遗漏了什么?问题解决了。我又一次访问了我的应用程序的构建设

我试图从UIViewController获取对我的应用程序委托的引用,但我不断收到以下错误消息:

“sharedApplication()”不可用:请在适当的情况下使用基于视图控制器的解决方案

我已经阅读了所有关于这类消息的文章,但我的问题似乎无关,因为我没有使用任何第三方框架。虽然Today扩展是我的应用程序的一部分,但发生错误的类是完全无关的。我甚至创建了一个全新的类,并不断得到相同的错误:


当我在操场上做同样的事情时,效果很好。我遗漏了什么?

问题解决了。我又一次访问了我的应用程序的构建设置,但还是被它绊倒了

Require Only AppExtension-Safe API
全部设置为是。默认设置为否。当我将此设置为否时,错误消失


我当然不记得曾经接触过或甚至不知道这一点,但幸运的是,现在它起作用了。

以防有人在提问时间起3年后出现这个错误。
请确保swift文件目标成员身份不包含Today扩展名。

我在创建新目标并将其添加到项目(远程服务通知目标)时遇到了相同的错误,并且在我的podfile中错误地添加了目标定义

我当时正在遵循第三方通知平台的指示,他们不清楚目标定义的位置。最初,我在主目标中添加了目标定义,与
Tests
目标定义非常相似。这个错误使我犯了这个错误


我最终将主目标之外的远程服务通知目标定义移动到pod文件的底部,解决了我的问题。

在我的情况下,我没有在导致错误的文件中定义导入基础。
愚蠢又迟到,但能帮助像我这样心不在焉的人。干杯。

这是应用程序扩展还是标准应用程序?您的应用程序是否包含应用程序扩展?错误发生在应用程序本身中。应用程序确实有一个扩展,但我正在尝试从应用程序获取appDel,而不是从扩展。发生错误的所有类都与扩展没有明显的关系。请检查以确保出现错误的文件没有错误地与扩展目标关联-请参阅“是”,不知道还要检查哪里。它可能在架构或生成设置中吗?感谢您的任何提示。@MuhammadWaqasBhati:请不要在问题中添加诸如“谢谢”之类的噪音。错误已被删除,但默认共享视图不存在。工作正常!一些可可豆也有同样的问题。我不得不为pod项目中的各个目标更改它来修复它。我花了一段时间才弄明白,因为我第一次尝试将它仅应用于我的构建目标。嗨,我有同样的问题,但即使应用到您的解决方案后,它也无法解决问题。我已经完成了一个项目,我有一个添加扩展的要求,我按照其他教程中提到的流程进行操作,但当有人需要时,我需要自定义布局希望使用我的应用程序扩展共享图像,因此当我使用用户点击共享时需要包含的类时,我遇到了上面提到的问题。如果你有一个应用程序扩展并将要求设置为
,苹果商店可能会拒绝你的应用程序。我也有同样的事情发生在我身上。问题中的第三方通知平台是OneSignal。不是真的。在OP的问题中你可以看到他们已经导入了UIKIT,UIKIT本身就导入了基础。当您已经导入UIKit时,您不需要手动导入基础,无论如何都不能解决OP的问题,因为它与基金会无关。