come sapere in modo programmato se un motore TTS installato nel mio dispositivo o no?

Vorrei sapere in modo programmato come get le informazioni del motore TTS del dispositivo per esempio se un motore TTS è installato o no, se installato allora quali sono quelle e quali sono le diverse lingue supportte da each motore TTS? Devo usare Android versione 2.1 (api livello 7) per get questo risultato.

Aiutaci a implementare questa funzionalità.

  • Mostra dialogo utilizzando PendingIntent
  • Come get il token di accesso dopo che l'utente è connesso da Gmail in Android?
  • Lo background Android nasconde il text di visualizzazione dei bambini
  • C'è un modo per aggiungere ombra interiore a un TextView su Android?
  • ViewPager e frammenti - quale è il modo giusto per memorizzare lo stato del frammento?
  • Domande sulla sicurezza e la progettazione di fatturazione in-app
  • Saluti,

    piks

    4 Solutions collect form web for “come sapere in modo programmato se un motore TTS installato nel mio dispositivo o no?”

    Puoi controllarlo prima di submit un'intenzione per il risultato

    Intent intent = new Intent(); intent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA); startActivityForResult(intent, 0); 

    Quindi puoi controllare che se hai installato il motore TTS o less nel metodo onActivityResult:

     @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(requestCode == 0){ if(resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS){ Toast.makeText(getApplicationContext(),"Already Installed", Toast.LENGTH_LONG).show(); } else { Intent installIntent = new Intent(); installIntent.setAction(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA); startActivity(installIntent); Toast.makeText(getApplicationContext(),"Installed Now", Toast.LENGTH_LONG).show(); } 

    Spero funzioni 🙂

    Questo post ufficiale di Android Blog ti dà la migliore pratica per scoprire se il motore TTS è installato e pronto per l'uso, così come altre pratiche su TTS.

    Per salvare i tuoi clic:

    Avviare questa operazione per verificare se TTS è installato o less:

     Intent checkIntent = new Intent(); checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA); startActivityForResult(checkIntent, MY_DATA_CHECK_CODE); 

    e quindi get il risultato in questo:

     private TextToSpeech mTts; protected void onActivityResult( int requestCode, int resultCode, Intent data) { if (requestCode == MY_DATA_CHECK_CODE) { if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS) { // success, create the TTS instance mTts = new TextToSpeech(this, this); } else { // missing data, install it Intent installIntent = new Intent(); installIntent.setAction( TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA); startActivity(installIntent); } } } 

    Questo ti dà l'elenco dei motori TTS installati sul tuo Android.

     tts = new TextToSpeech(this, this); for (TextToSpeech.EngineInfo engines : tts.getEngines()) { Log.d("Engine Info " , engines.toString()); } 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.