быстрые клавиши iOS siri Swift - PullRequest
0 голосов
/ 02 декабря 2019

В настоящее время я изучаю swift для нашей радиостанции, и я заметил, что конкурирующая станция смогла установить ярлык siri, который позволяет людям говорить «Эй, Siri play (название станции)», и Siri откроет приложениеи начать играть на указанной станции.

Мне интересно, как это можно сделать со Swift?

1 Ответ

0 голосов
/ 02 декабря 2019

Вы можете сделать это с помощью Siri's intent. Вам нужно будет создать файл определения цели Siri , используя Xcode.

Пример определения намерения для PlayGame:

enter image description here

В приведенном выше примере я создал простое намерение дляиграть в игры. Я добавил категорию как Do, есть много категорий, которые вы можете выбрать. Вы также можете передать параметр через намерение, точно так же, как я использовал game name, вы можете добавить radio station name туда.

Вы также можете добавить это конкретное намерение для функции предложения Siri.

Обработка события намерения Siri:

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")
}
...