Как программно изменить движок TTS по умолчанию - PullRequest
15 голосов
/ 09 сентября 2011

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

Settings > Voice input & output > Text-to-speech settings > Default Engine

Я бы хотел сделать это программно из моего приложения.Возможно ли это?

Если так, как бы я поступил?

Ответы [ 2 ]

10 голосов
/ 29 мая 2016

Приведенный выше ответ больше не действителен, поскольку метод устарел. Android API 14 и выше, вам нужно использовать конструктор для настройки движка.

TextToSpeech(Context context, TextToSpeech.OnInitListener listener, String engine)

Строка "engine" - это имя пакета движка TTS, который вы хотите использовать.

6 голосов
/ 08 ноября 2011

Вы не можете изменить движок по умолчанию. Однако вы можете изменить используемый движок, вызвав TextToSpeech.setEngineByPackageName () (доступно с версии 2.2), или использовать конструктор, который принимает параметр пакета движка (доступен в ICS, поэтому сейчас он не очень полезен) ,

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

...