2012-04-07 9 views
2

にのみTTSのロケールを取得するために、私はコードアンドロイド

Locale.getAvailableLocales(); 

の下に使用してロケールを得ることができ、それがデバイスで利用可能な巨大なロケールを取得している方法。 TTS専用のロケールを探しています。

私が見つけた別のオプションは、以下の機能を使用したクロスチェックです。以下のコードを使用して、使用可能なすべてのロケールを確認するのは快適ではありません。

mTts.isLanguageAvailable(localeLang) 

いずれかが、このAPIはありません私だけTTSロケール

答えて

2

を取得するための最良の方法を提案してくださいすることができます。さらに、サポートされているロケールはTTSエンジン固有のものなので、「デバイスで使用できるTTSロケール」などはありません。現在の(またはデフォルトの)TTSエンジンのサポートされているロケールはチェックできますが、すべてのエンジンのロケールをすぐに確認することはできません。いくつのロケールをサポートする必要があり、なぜisLanguageAvailable()に問題がありますか?

+0

ありがとうNikolay、現在私はisLanguageAvailableメソッドのみを使用しています。私はisLanguageAvailableメソッドを使用する代わりに直接使用可能なオプションを使用することを考えました。なぜなら、〜6つのTTSロケールを表示するためには、デバイス上で利用可能なロケールが30以上のロケールと比較する必要があるからです。 – Abilash

+0

なぜデバイスのロケールと比較しますか? TTSエンジンが提供する言語には関係しません。現在のロケールと比較するだけかもしれませんか? –

+0

私のシナリオでは、TTSをサポートするすべての可能なロケールを表示する必要があります – Abilash