应用程序图标上的快捷方式项不适用于 iOS 13
Posted
技术标签:
【中文标题】应用程序图标上的快捷方式项不适用于 iOS 13【英文标题】:Shortcut item on app icon not working with iOS 13 【发布时间】:2019-09-27 12:36:26 【问题描述】:为了支持应用图标上的快捷方式,我们在SceneDelegate
中实现了以下方法:
func windowScene(_ windowScene: UIWindowScene, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void)
当应用程序被杀死并通过这样的快捷方式启动时,不会调用此方法(它只是显示主屏幕)。但是,当应用程序在后台运行时,会调用此方法,一切都会按预期运行。
我还检查了didFinishLaunchingWithOptions
中的AppDelegate
以查看launchingOptions
中是否有快捷方式,但它们是nil
。
【问题讨论】:
我看到了同样的行为。我隐约记得看到一些关于在应用程序强制退出后启动时未恢复状态的声明。某种安全机制。这可能是相关的。我看看能不能找到那句话。 对我来说同样的问题 【参考方案1】:检查shortcutItem in
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions)
if let shortcutItem = connectionOptions.shortcutItem
shortcutItemToProcess = shortcutItem
然后在
中处理func sceneDidBecomeActive(_ scene: UIScene)
if let shortcutItem = shortcutItemToProcess
shortcutItemToProcess = nil
【讨论】:
以上是关于应用程序图标上的快捷方式项不适用于 iOS 13的主要内容,如果未能解决你的问题,请参考以下文章
主屏幕应用程序快捷方式不适用于 android。未安装应用程序