Android Extras zur Spracherkennung funktioniert nicht

8

Ich bin gerade mit der Spracherkennung beschäftigt, und ich möchte, dass der Spracherkenner mir ständig zuhört. Der Zweck der App ist es, auf die Rede eines bestimmten Schlüsselwortes zu warten: wenn der Benutzer dieses Schlüsselwort sagt, wird der Dienst bereit, Benutzersprachbefehle zu empfangen. Nach der Recherche habe ich herausgefunden, dass wir die Zeit, die der Spracherkenner abhört, manipulieren können. Durch diese Konstanten:

Übrigens hört der Standard-Recognizer-Dienst etwa 10 Sekunden lang zu. (Die Google API)

%Vor%

Ссылка

Dies sind die Extras der Bundle-Klasse.

Das Problem ist, wenn ich diese Konstanten in meinem Code verwende, funktioniert es nicht.

Hier ist mein Code:

%Vor%

Der Erkenner hört mir immer noch ungefähr 10 Sekunden zu, obwohl ich 5000 mseconds geschrieben habe, wie Sie sehen.

Können Sie sich das Problem vorstellen? Vielleicht weiß ich nicht, wie man Extras benutzt oder vielleicht geht es um Berechtigungen und vielleicht überspringt es meinen Code oder ich sollte einige andere Codes hinzufügen.

Jede Hilfe würde geschätzt werden.

Bearbeiten: Hier ist mein vollständiger Code:

VoiceRecognitionActivity.java

%Vor%

}

TTSUtils.java

Öffentliche Klasse TTSUtils implementiert TextToSpeech.OnInitListener {

%Vor%

}

EinstellungenActivity.java

public class SettingsActivity erweitert PreferenceActivity {

%Vor%

}

    
Ayse 27.03.2013, 14:02
quelle

2 Antworten

6

Diese Parameter haben bei Jelly Bean-Geräten in einem kürzlich durchgeführten Google-Suchupdate nicht mehr funktioniert. Ich wollte einen Fehlerbericht für eine Weile einreichen. Sie arbeiten immer noch für ICS-Geräte und darunter.

Wenn Sie weiterhin nach einem Keyword lauschen möchten, ohne dass es zu einem Zeitlimit kommt, müssen Sie eine Schleife ausführen, bei der Sie nach dem Keyword in onPartialResults . Wenn Ergebnisse aufgerufen wird und das Keyword lautet nicht in denen entweder erkannt, müssen Sie sofort die Erkennung neu starten.

Sie müssen den stillen Todesfehler behandeln und das Systemaudio stummschalten Streamen Sie zu verhindern Sie den Jelly Bean-Signalton .

Diese Probleme machen die Implementierung sehr unordentlich und frustrierend. Sortiere es aus Google ....

    
brandall 16.07.2013 11:17
quelle
1

Diese Arbeit funktioniert nur für Jelly Bean

%Vor%     
Hoan Nguyen 27.03.2013 15:11
quelle