IOS - Как я могу запустить приложение с намерением Сири - PullRequest
0 голосов
/ 02 октября 2018

В настоящее время я внедряю новую функцию быстрого доступа siri.Вот как я это пожертвую:

if #available(iOS 12.0, *) {

    let intent = MyIntent()

    let interaction = INInteraction(intent: intent, response: nil)
    interaction.donate { (error) in
        guard error == nil else {
            Log.warning("Send Problem : \(String(describing: error?.localizedDescription))")
            return
        }
        Log.info("Send Intent MyIntent")
    }

}

Это мой файл Intents.intentdefinition:

Intents File

Все отлично работаети Сири возвращает ярлык, если я искал MyIntent.Вот что я вижу, если коснуться результата от siri:

Siri Result 1

Siri Result 2

Я не хочу этот дополнительный вид с кнопкой под ним.Как я могу добиться такого поведения, чтобы просто запустить приложение без дополнительного представления.

Это моя функция делегата приложения:

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

        if #available(iOS 12.0, *) {

            userActivity.isEligibleForPrediction = true

            if let intent = userActivity.interaction?.intent as? MyIntentIntent {
                //code to handle shortcut

                return true
            }

        }

        return false

    }

Кто-то уже реализовал эту функцию и может мне помочь?

...