У моего приложения есть собственное намерение, и оно предлагает пользователю ярлык, подобный следующему:
let intent = ReadIntent()
if let shortcut = INShortcut(intent: intent) {
INVoiceShortcutCenter.shared.setShortcutSuggestions([shortcut])
}
Мое приложение всегда запускается для обработки ярлыка, поэтому я просто обрабатываю его в application(_:continue:restorationHandler:)
.Там нет намерения расширения.
Это очень удобно и работает как шарм ... однако, я не могу понять, как заставить Siri реагировать, когда пользователь запускает ярлык.Вся информация, которую я нахожу в Интернете, объясняет, как это сделать при использовании расширения намерений.
В примере Soup Chef , например, говорится:
Soup Chef помечает каждый тип ярлыка Поддерживает фоновое выполнениеТаким образом, системе не нужно открывать приложение для обработки намерения.При такой маркировке система использует расширение приложения намерения Soup Chef для обработки заказа.
А затем объясняется, как добавить пользовательский ответ в расширение приложения.Но мое приложение должно быть запущено в любом случае, поэтому я не отмечаю эту опцию, и намерение не обрабатывается расширением.Нет ли способа вызвать ответ без него?Это звучит как нечто очень простое, и ответ уже находится в файле определения намерений, я просто не могу заставить Сири сказать это.(