3

我正在使用http://mobile.tutsplus.com/tutorials/android/android-sdk-using-the-text-to-speech-engine/上的示例

我已将其更改为Local.US以下内容:Local.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 时,可以正常地说英语单词。

如果我在栏中输入 こんにちは 并单击按钮,它会发出咔哒声。它没有显示 Toast 消息说它不支持该语言。

这是当我点击日文文本时从 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

大多数安卓设备没有内置日语。您必须安装第三方语言包,例如SVOX。安装后下次打开应用程序时,它会提示您是否要使用 android 系统或新的 SVOX 文本语音。如果没有,您将不得不更改应用程序 > 语言和输入 > 文本转语音中的默认设置。一旦完成,它应该能够说日语。您不必修改代码。

于 2013-03-29T12:15:49.917 回答