Как программно узнать, какой язык в настоящее время выбран для диктовки? (Apple Watch)

У меня есть приложение Apple Watch, которое работает исключительно с английской диктовкой. Причина, по которой больше нет доступных языков, - длинная история, так что терпите меня некоторое время. Я знаю, что при "жестком нажатии" на экране, в то время как происходит диктовка с красивым голосовым графиком, появляется меню "выбора языка", где пользователь может выбрать один из доступных языков для диктовки.

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

Меню и все на моем телефоне на английском, но я также использую немецкий, каталанский и испанский языки.

Пока что я использую этот код:

let language:NSString=NSLocale.preferredLanguages().first!
print("ASR(?) Language: "+(language as String))

Но на самом деле это возвращает язык системы, установленный в основной карте просмотра iOS: "Общие"> "Язык и регион"> "Язык системы", а не "Язык диктовки".

... и это код, который я использую для диктовки:

    self.presentTextInputControllerWithSuggestions([], allowedInputMode: WKTextInputMode.Plain, completion:{(results) -> Void in
        let aResult = results?[0] as? String
        if(!(aResult == nil)){
            print(aResult)
            print("ASR says: "+aResult!)
        }//end if
    })//end show voice menu

Можно ли определить, какой язык действительно используется для диктовки?

0 ответов

Другие вопросы по тегам