2014-11-04 16 views
25

Android uygulamasında Text to speech kullanıyorum.Google TTs ve espeak ile çalışıyor, Ama Samsung TTS ile birlikte kullanıldığında şu istisnaları veriyor.IllegalArgumentException: Geçersiz int: Samsung tt ile "OS"

java.lang.IllegalArgumentException: Invalid int: "OS" 
at android.os.Parcel.readException(Parcel.java:1429) 
at android.os.Parcel.readException(Parcel.java:1379) 
at android.speech.tts.ITextToSpeechService$Stub$Proxy.isLanguageAvailable(ITextToSpeechService.java:482) 
at android.speech.tts.TextToSpeech$10.run(TextToSpeech.java:1084) 

at android.speech.tts.TextToSpeech$10.run(TextToSpeech.java:1081) 
at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:1329) 

at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:570) 

at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:561) 

at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1081) 
+3

setLanguage() –

+2

@MartinVysny bir geçici çözüm bulma konusunda herhangi bir şans? SetLanguage (...) ile aynı sorunu yaşıyorum. – Dogcat

+0

Hayır şans, üzgünüm. Tek düşündüğüm kullanıcılara duyurmak, bu sorunu çözmek için Samsung'a spam yapmak;) –

cevap

3

Ben TextToSpeech.getDefaultVoice veya TextToSpeech.getVoices() veya TextToSpeech.getVoice() gibi bir şey yapmaya çalıştığında Ben de bu durum almak bulduk. Bunları çağırarak değil, bunun yerine Voices nesnesi aracılığıyla elde etmeye çalıştığım şeyi almak için varsayılan Locale üzerinden çalışarak çalıştım.

Yani benim durumumda ben bu yüzden bir dil seçmek olabilir Yerel Ayar öğrenmek istedi, ben de öyle yaptım aşağıdaki Samsung cihazı isLanguageAvailable true döndürür ama esnasında daha sonra tam olarak bu durumla başarısız Benim için

  Locale lTest = Locale.getDefault(); 
      res = mTTS.isLanguageAvailable(lTest); 
İlgili konular