Buduję aplikację, która używa poleceń głosowych do wykonywania określonych funkcji. Mam pewne kody robocze od hereRozpocznij rozpoznawanie mowy za pomocą wyrażenia typu "OK Google"?
private static final int SPEECH_REQUEST_CODE = 0;
// Create an intent that can start the Speech Recognizer activity
private void displaySpeechRecognizer() {
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
// Start the activity, the intent will be populated with the speech text
startActivityForResult(intent, SPEECH_REQUEST_CODE);
}
// This callback is invoked when the Speech Recognizer returns.
// This is where you process the intent and extract the speech text from the intent.
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent data) {
if (requestCode == SPEECH_REQUEST_CODE && resultCode == RESULT_OK) {
List<String> results = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
String spokenText = results.get(0);
// Do something with spokenText
}
super.onActivityResult(requestCode, resultCode, data);
}
Jednak takie podejście musi być aktywowane poprzez kliknięcie przycisku. Czy istnieje sposób na rozpoczęcie rozpoznawania mowy za pomocą polecenia głosowego? Podobnie jak Google Now, gdzie możesz po prostu powiedzieć "OK, Google", to otworzy się działanie Rozpoznawanie mowy i słuchać poleceń?
Dzięki.