Android TTS只说英语

时间:2015-04-02 17:10:24

标签: android text-to-speech

我对Android TTS有一个奇怪的问题。我使用locale.getDefault()获取tts.setLanguage的默认语言环境。如果我将手机区域设置更改为其他语言,则TTS不会说任何内容。

@Override
        public void onInit(int status) 
        {
            if(status == TextToSpeech.SUCCESS)
            {
                try
                {
                    int result = tts.setLanguage(Locale.getDefault());

                    Log.e("LANGUAGE", "Result : " + result  + " " + Locale.getDefault().getLanguage());

                    if(result == TextToSpeech.LANG_MISSING_DATA || result == TextToSpeech.LANG_NOT_SUPPORTED)
                    {
                        tts.setLanguage(Locale.ENGLISH);
                    }

                } catch (Exception e)
                {
                    e.printStackTrace();
                }                   
            }
        }

要检查我是否使用按钮点击:

btn_Check.setOnClickListener(new OnClickListener()
    {           
        @Override
        public void onClick(View v) 
        {

            String text =et_Check.getText().toString().trim();
            if(!text.equals(""))
                Log.e("Strnig", text);
                tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);

        }
    });

Locale.English它正在工作,但不适用于任何其他语言。 Logcat输出:

 Result : 1 pt

0 个答案:

没有答案