2017-07-15 136 views
0

如果我在模拟器上启动应用程序并按下按钮,我可以听到声音,但如果它在真实设备上运行,我听不到任何声音(音量水平约80%):Android TTS仅在仿真器上讲话,而不在真实设备上

... 
     t1 = new TextToSpeech(getActivity().getApplicationContext(), new TextToSpeech.OnInitListener() { 
      @Override 
      public void onInit(int status) { 
       if (status != TextToSpeech.ERROR) { 
        t1.setLanguage(Locale.UK); 
        Log.d("TTS", "ok"); 
       } else { 
        Log.d("TTS", "error"); 
       } 
      } 
     }); 

     button1.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       t1.speak("What is your name?", TextToSpeech.QUEUE_FLUSH, null); 
      } 
     }); 
... 

根据logcat的一切输出是好的,但我听不到任何声音,如果我按下按钮:

I/TextToSpeech: Sucessfully bound to com.google.android.tts 
I/TextToSpeech: Connected to ComponentInfo{com.google.android.tts/com.google.android.tts.service.GoogleTTSService} 
TTS: ok 

可以采取什么问题吗?仿真器API级别是4.2.2,设备 - 4.2.1。

[email protected]:/ # ls /system/tts/lang_pico/          
de-DE_gl0_sg.bin 
de-DE_ta.bin 
en-GB_kh0_sg.bin 
en-GB_ta.bin 
en-US_lh0_sg.bin 
en-US_ta.bin 
es-ES_ta.bin 
es-ES_zl0_sg.bin 
fr-FR_nk0_sg.bin 
fr-FR_ta.bin 
it-IT_cm0_sg.bin 
it-IT_ta.bin 

回答

0

如果您的设备没有安装语言或不支持,显然它不能播放它。如果它不是美国,请尝试......!

does this helped?

+0

不幸的不是。我将语言改为美国。它没有帮助。某人提出的检查设备上是否安装了语言的链接不再适用。而且我没有其他设备可以检查。 – ka3ak

相关问题