如何检查我的应用程序是否由 Siri 快捷方式恢复

How do I check if my app is resumed by a Siri shortcut

我正在使用 Siri 快捷方式。我想知道我的应用程序是否在以下情况下从 Siri 快捷方式启动:

  1. 当应用程序在后台运行时
  2. 当应用程序不在后台时运行

对于 案例 2,我可以使用“didFinishLaunchingWithOptions”方法,但对于 案例 1, 我不确定使用什么方法。

如果您对此主题有任何建议和想法,我将不胜感激。谢谢。

您可以在 AppDelegate

中实施此检查
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
    if #available(iOS 12.0, *) {
        if userActivity.interaction?.intent is {YOUR_INTENT_CLASS} {
            // App launched via that particular shortcut.
        }
    }
}