3

http://mobile.tutsplus.com/tutorials/android/android-sdk-using-the-text-to-speech-engine/にある例を使用しています

と以下を変更しましたLocal.USLocal.JAPANESELocal.JAPAN

public void onInit(int initStatus) {

        //check for successful instantiation
    if (initStatus == TextToSpeech.SUCCESS) {
        if(myTTS.isLanguageAvailable(Locale.JAPANESE)==TextToSpeech.LANG_AVAILABLE)
            myTTS.setLanguage(Locale.JAPANESE);
    }   
    else if (initStatus == TextToSpeech.ERROR) {
        Toast.makeText(this, "Sorry! Text To Speech failed...", Toast.LENGTH_LONG).show();
    }   
}  

アプリケーションは正常に動作し、Local.JAPANESE に設定すると英単語を問題なく話すことができます。

バーに「こんにちは」と入力してボタンをクリックすると、クリック音がします。言語をサポートしていないというトースト メッセージは表示されません。

日本語のテキストをクリックすると、logcat から出力される内容は次のとおりです。

W/patts   ( 1697): [verbalize_controller.cc:366] Failed to find verbatim rule for character 
W/patts   ( 1697): [verbalize_controller.cc:366] Failed to find verbatim rule for character �
W/patts   ( 1697): [verbalize_controller.cc:366] Failed to find verbatim rule for character �

助けてくれてありがとう!

4

1 に答える 1

1

ほとんどの Android デバイスには日本語が組み込まれていません。SVOXなどのサードパーティの言語パックをインストールする必要があります。インストール後、次にアプリを開いたときに、Android システムを使用するか、新しい SVOX テキストを使用してスピーチを行うかを確認するメッセージが表示されます。そうでない場合は、アプリ > 言語と入力 > テキスト読み上げでデフォルト設定を変更する必要があります。これができれば、日本語が話せるようになります。コードを変更する必要はありません。

于 2013-03-29T12:15:49.917 に答える