Как остановить распознавание речи (диктант) в Apple Watch, когда пользователь перестает говорить?
Я успешно реализовал встроенное распознавание речи (Dictation) в Apple Watch (WatchOS 2.1, iOS 9.2.1), в основном я использовал этот код с пустым «массивом опций меню»:
func launchDictation(){
self.presentTextInputControllerWithSuggestions([], allowedInputMode: WKTextInputMode.Plain, completion:{
(results) -> Void in
let aResult = results?[0] as? String
if(!(aResult == nil)){
print(aResult)
print("SHORT ASR COMPLETED")
dispatch_async(dispatch_get_main_queue()) {
// Update UI
}
}//end if
})//end show voice menu
}
Так как это ... пользователь нажимает кнопку «Говорить», затем появляется всплывающее окно (показывающее обнаруженные слова, когда пользователь говорит, и симпатичный график небольшого объема). Прямо сейчас пользователь должен говорить и нажать «Готово», чтобы завершить распознавание речи. Если фраза обнаружена, но «Готово» не нажата, на экране появится надпись «Сбой диктовки». Кто-нибудь знает, как реализовать некоторый слушатель или делегат, который обнаруживает, когда завершается процесс диктовки через несколько секунд после того, как пользователь перестал говорить?