Android: невозможно запустить "Google Voice Typing" программным способом - PullRequest
0 голосов
/ 14 декабря 2018

Итак, у меня есть это простое приложение для перевода речи в текст.

Я использую это, чтобы запустить переводчик речи в текст Google в своей деятельности:

val intent = Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH)
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
                    RecognizerIntent.LANGUAGE_MODEL_FREE_FORM)
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault())
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Hi speak something")
startActivityForResult(intent, 1)

Он запускает следующий экран - теперь это позволяет мне произносить только одно предложение за раз, ноне непрерывный перевод речи в текст enter image description here

Вместо этого я хочу запускать клавиатуру "google voice typing" программно в любое время, когда захочу, поскольку это позволяет осуществлять непрерывный перевод текста в текст,enter image description here

Я не смог найти источники для запуска клавиатуры "Google Voice Typing".

На клавиатуре "SwiftKey" есть кнопка микрофона, нажатие на которую фактически запускает клавиатуру "Google Voice Typing".

Так что я думаю, что должен быть способ запустить "Google Voice Typing"."Клавиатура программно.

1 Ответ

0 голосов
/ 16 декабря 2018

Насколько я знаю, вы не можете программно выбрать конкретный редактор методов ввода (IME) (например, Google Voice Typing), который будет использоваться в вашем приложении, и вы даже не можете пометить поля ввода для запроса голосового ввода (см. Запустите клавиатуру Android в режиме распознавания голоса ).

SwiftKey сам по себе является IME, поэтому он может вызывать что-то вроде setInputMethodAndSubtype для изменения на другой IME.

...