5 Jul, 2017

Google Spracherkennung in Android App einbinden

Hi, in diesem Tutorial zeige ich dir, wie du die Google Spracherkennung in deine eigene Android App einbinden kannst. Mit dieser Spracherkennung kannst du gesprochene Worte, die über das Mikrofon deines Gerätes aufgenommen werden, in einen Text umwandeln,  mit dem du dann deiner App eine bestimmte Funktionalität ermöglichen kannst.

 

Die Spracherkennung von Google lässt sich über einen Intent starten. Diesem Intent kannst du dann alle möglichen Einstellungen übergeben.

 

Zuerst musst du aber einen Request Code erstellen, damit du hinterher das Ergebnis des Google Intents zuordnen kannst.

Füge diesen Java Code direkt nach der Klassen Deklaration deiner Activity ein.

 

Als Nächstes kommen wir zum Intent.

 

  1. Erstelle einen neuen Intent.
  2. Diesem Intent musst du mit der Methode „putExtra()“ die benötigten Einstellungen hinzufügen.
    • Hier hast du eine kleine Übersicht für die in diesem Beispiel verwendeten Einstellungen
      • ACTION_RECOGNIZE_SPEECH: Startet eine Activity die den Benutzer ein Fenster anzeigt und uns ein Ergebnis liefert.
      • EXTRA_LANGUAGE_MODEL: Ist dafür da den Intent zu informieren in welchem sprachlichem Kontext die Spracherkennung genutzt werden soll.
      • EXTRA_PROMPT: Lässt uns die Nachricht für den Benutzer einstellen.
      • EXTRA_MAX_RESULTS: Hier kann man einstellen, wie viele verschiedene Möglichkeiten der Erkennung zurückgegeben werden sollen.
      • EXTRA_LANGUAGE: Diese Option ist dafür da, um die Sprache einzustellen. Hier kannst du zwischen einer fest eingestellten Sprache „Locale.GERMAN“ oder einer dynamischen Sprachauswahl „Locale.getDefault()“, welche sich nach der Standard Sprache des Gerätes orientiert, wählen.
    •  Eine Übersicht mit allen Einstellungen, die du hier auch noch verwenden kannst, findest du hier.

 

Nachdem du den Intent und den Request Code erstellt hast musst du die Methode: „startActivityForResult()“ aufrufen, dieser übergibst du deinen Intent und den Request Code. Durch diesen Aufruf wird eine neue Activity gestartet, welche die Spracherkennung regelt und uns hinterher ein Ergebnis liefert.

Dieses Ergebnis bekommst du indem du die „onResult()“ Methode deiner Activity überschreibst.

 

 

In der „onResult()“ Methode musst du zuerst überprüfen, ob das Ergebnis auch von deinem Intent kommt. Um dies zu machen musst du den Request Code der Methode mit deinem eigenen vergleichen. Wenn diese übereinstimmen erstellst du eine neue Liste, in der du die Ergebnisse der Spracherkennung speichern kannst. Um die Liste mit Ergebnissen zu füllen, rufst du die Methode „getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS)“, des übergebenen Intents auf.

 

 

Nun kannst du mit der Ergebnis-Liste weiterarbeiten und die passende Funktionalität für deine eigene App erstellen.

 

 

 

 

 

Das könnte dich auch interessieren...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*