iOS siri快捷方式Swift

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

我目前正在为我们的广播电台学习快速,并且我注意到一个竞争对手的电台已经能够设置siri快捷方式,允许人们说“嘿Siri播放(电台名称)”,Siri将打开该应用程序,开始播放所说的电台。

我想知道如何用Swift做到这一点?

ios swift siri
1个回答
0
投票

您可以在Siri's intent的帮助下完成此操作。您将必须使用Xcode创建Siri意向定义文件

PlayGame的示例意图定义:

enter image description here

在上面的示例中,我为玩游戏创建了简单的意图。我已将类别添加为Do,您可以选择许多类别。您也可以通过意图传递参数,就像我使用过game name一样,您可以在其中添加radio station name

您还可以为Siri建议功能添加此特定意图。

处理Siri Intent事件:

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

    if userActivity.activityType == "PlayGameIntent" {
        print(userActivity.userInfo ?? "")
    }

    return true
}

注意:您必须将此意图捐赠给iOS才能处理,您可以通过以下方式做到:

let intent = PlayGameIntent()
intent.gameName = "PUBG"

let interaction = INInteraction(intent: intent, response: nil)
interaction.donate { (error) in
    print(error ?? "error")
}
© www.soinside.com 2019 - 2024. All rights reserved.