1. Wir haben diesmal 2 Gewinnspiele zeitgleich für euch - Gewinne einmal ein UMI Plus E - Beim 2ten könnt ihr ein Nomu S30 gewinnen!
  1. FelixL, 16.06.2010 #1
    FelixL

    FelixL Threadstarter Ehrenmitglied

    Um zu überprüfen, ob auf dem Gerät Text To Speech verfügbar ist, gibt es diesen Intent:

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

    Dummerweise ist startActivityForResult nur in Activities implementiert. Gibt es einen Weg, die Abfrage auch von einem Service aus zu machen?
     
  2. unfug, 16.06.2010 #2
    unfug

    unfug Junior Mitglied

    Hi,
    wenn du's nur pruefen willst:
    Gruss unfug
     
    FelixL bedankt sich.
  3. FelixL, 16.06.2010 #3
    FelixL

    FelixL Threadstarter Ehrenmitglied

    Verstehe ich das richtig, das list.size()==0 ist, sobald kein TTS verfügbar ist?
    Großen dank dafür, werde das nachher testen...muss erst mal rausfinden wie ich TTS deinstalliere ohne was kaputt zu machen :D
     
  4. unfug, 16.06.2010 #4
    unfug

    unfug Junior Mitglied

    Jepp.
    Es koennen unter Umstaenden mehrere Activities fuer die Action verfuegbar sein, deshalb kann die Liste mehrere Eintrage haben.

    Probiers doch mit dem Emulator.

    Gruss unfug
     
  5. FelixL, 16.06.2010 #5
    FelixL

    FelixL Threadstarter Ehrenmitglied

    Wollte es auf 2.2 testen, aber der hat TTS vorinstalliert. Hab es jetzt geschafft, es von meinem Hero zu schmeißen, dein Ding da funktioniert schonmal. Danke :)
     
  6. FelixL, 17.06.2010 #6
    FelixL

    FelixL Threadstarter Ehrenmitglied

    Okay, es funktioniert logischerweise nicht.

    Bei der offiziellen Version (siehe erster Post) käme es zu einem FC wenn niemand den Intent annehmen könnte wenn TTS nicht installiert ist. Der Teil, der für TTS zuständig ist, gibt dann eine Antwort zurück, die quasi "Nein, TTS ist nicht installiert" bedeutet. Sprich die App selbst ist immer da, lädt sich bei der Installation nur noch die Daten runter die sie braucht. Sprich die packetmanagermethode gibt immer "true" zurück. Bei mir hat es gestern nur funktioniert weil ich es unsauber deinstalliert hab ;)
     

Diese Seite empfehlen