RecognitionListener in JellyBean Friert ein, wenn nicht sofort angesprochen wird

8

Eine App zur Spracherkennung, an der ich arbeite, funktioniert auf allen Android-Versionen ab API 8 (Android 2.2).

Aber auf einem Nexus S 4G (Android 4.1.1) wird RecognitionListener einfach für etwa 1 Minute anhalten , dann einen ERROR_SERVER über seine onError () Rückruf.

Wenn innerhalb von 1-2 Sekunden gesprochen wird ( onReadyForSpeech Piepton), wird es sich wie erwartet verhalten.

Was hat sich in JellyBean geändert, das dieses Verhalten erklären könnte?

Was noch wichtiger ist, gibt es eine Möglichkeit, dass es sich wie in den älteren Versionen von Android verhält? (d. h. hören Sie weiter zu und geben Sie dann ERROR_SPEECH_TIMEOUT aus, wenn Sie nicht innerhalb der Standard <10 Sekunden gesprochen werden)

    
srf 02.01.2013, 04:01
quelle

2 Antworten

1

Am Ende habe ich die von @scriptocalypse

vorgeschlagene Lösung verwendet

Danke @scriptocalypse!

(Ich hatte nicht die Möglichkeit, die von @HoanNguyen vorgeschlagene Lösung zu versuchen, weil sie einen Dienst implementiert, der das ist über den Rahmen meiner kleinen App hinaus, aber es sieht vielversprechend aus. Danke @HoanNguyen auch.)

    
srf 25.03.2013, 19:30
quelle
-2

Es gibt einen ähnlichen Beitrag hier , der den Vorschlag bietet, einfach zuzuhören erneut beim Empfang des ERROR_TIMEOUT_SPEECH-Ergebnisses.

    
Chuck Krutsinger 08.01.2013 21:05
quelle