我正在尝试从 UIViewController 获取对我的应用程序委托的引用,但我不断收到以下错误消息:
'sharedApplication()' 不可用:在适当的情况下使用基于视图控制器的解决方案。
我一直在阅读所有处理此类消息的文章,但我的问题似乎无关紧要,因为我没有使用任何第三方框架。虽然 Today Extension 是我的应用程序的一部分,但发生错误的类是完全不相关的。我什至创建了一个全新的类并不断收到相同的错误:
我正在尝试从 UIViewController 获取对我的应用程序委托的引用,但我不断收到以下错误消息:
'sharedApplication()' 不可用:在适当的情况下使用基于视图控制器的解决方案。
我一直在阅读所有处理此类消息的文章,但我的问题似乎无关紧要,因为我没有使用任何第三方框架。虽然 Today Extension 是我的应用程序的一部分,但发生错误的类是完全不相关的。我什至创建了一个全新的类并不断收到相同的错误:
问题解决了。我再次访问了我的应用程序的构建设置并偶然发现
Require Only AppExtension-Safe API
全部设置为YES。但默认值为 NO。当我将其设置为 NO 时,错误消失了。
我当然不记得曾经接触过甚至不知道这件事,但幸运的是现在它起作用了。
当我创建新目标并将其添加到我的项目(远程服务通知目标)并在我的 podfile 中错误地添加目标定义时,我遇到了同样的错误。
我按照第三方通知平台的指示进行操作,但他们不清楚目标定义的放置位置。最初,我在我的主要目标中添加了目标定义,就像Tests
目标定义一样。这个错误导致我犯了这个错误。
我最终将远程服务通知目标定义从我的主要目标移到了我的 podfile 的底部,这解决了我的问题。
以防有人在提问时间 3 年后遇到此错误。确保 swift 文件目标 Membership 不包含 Today Extension。
就我而言,我没有import Foundation
在导致错误的文件中定义。愚蠢和迟到,但可以帮助像我这样心不在焉的人。干杯。