Xcode退出SceneDelegate后未调用应用程序委托

问题描述 投票:1回答:1

当iOS 13发布时,我选择通过常规过程选择不使用新的SceneDelegate。

 - SceneDelegate.swift does no longer exist
 - There are no Scene related methods in AppDelegate
 - Application Scene Manifest is removed from .plist

这很好,这是我自从运行以来的方式(iOS 11.0目标,Xcode 11.2.1)。

上周,我运行了一个部署目标为13.0的构建,然后又换回了11.0。

此后,不再调用应用程序委托方法,例如。

func application(_ application: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any])

发生的唯一一件事,我可以看到的是登录控制台

Can't end BackgroundTask: no background task exists with identifier 15 (0xf), or it may have already been ended

我已经三重检查了上面的所有设置,但无法像以前一样工作。

唯一可能不同的是,故事板现在默认为“自动”(iOS 13.0,*)演示模式,但我不确定它以前如何。

由于只有iOS 13以上版本才提供自动功能,因此似乎有些混乱。

有人知道吗?

关注此thread中的响应:

applicationDidBecomeActive
applicationWillEnterForeground

实际上被称为。

我尝试清理构建,重新启动Xcode,mac,设备,清除派生数据等。

ios swift xcode appdelegate
1个回答
0
投票

所以,我终于找到答案了。

结果证明这是一个很好的老

实例方法几乎匹配

func application(_ application: UIApplication, continue userActivity: NSUserActivity,
    restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool

func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool

该Xcode完全忽略了报告,并设法以某种方式在iOS 11的构建> iOS 13> iOS 11的构建之间中断。

这也很奇怪,因为我几天前用Apples和Firebase的文档对它们进行了验证,而它们之间没有什么区别。

最后,现在可以了,是的。

© www.soinside.com 2019 - 2024. All rights reserved.