¿Cómo utilizo la búsqueda por voz y VoiceRecognition en Android?
Quiero utilizar VoiceRecognition en mi aplicación, pero esta aplicación necesita instalar la búsqueda por voz.
No quiero que el usuario tenga que instalar otra aplicación y volver a mi aplicación para ejecutarla. Quiero que la búsqueda por voz se instale desde mi aplicación o, alternativamente, me gustaría encontrar un tutorial sobre cómo agregar capacidad de búsqueda de voz a mi aplicación.
- ¿Reconoce RecognitionListener.onError () automáticamente SpeechRecognizer.cancel ()?
- Voice Matcher para combinar la contraseña de voz en Android (Comparar voz)
- Android mediaRecorder.setAudioSource ha fallado
- API de reconocimiento de voz sin conexión en Android 4.2
- ¿Hay alguna manera de detectar si un teléfono Android es compatible con la integración de Voicemail en el registro de llamadas?
¿Que puedo hacer?
- Android compara dos sonidos para la correspondencia fonética
- Cómo desarrollar aplicaciones de reconocimiento de voz como tom de conversación
- Silenciar el sonido de reconocimiento de voz de Google
- ¿Cómo puedo utilizar el reconocimiento de voz sin el diálogo molesto en los teléfonos Android
- Reconocimiento de voz fuera de línea
- Tono DTMF en RecognitionListener.onReadyForSpeech () confundido con el discurso
- Integre el reconocimiento de voz de Google en la aplicación para Android
- Limitación del diccionario de reconocimiento de voz para una mejor coincidencia y buena precisión
Utilice RecognizerIntent para disparar el reconocedor de voz instalado en su dispositivo
Vea este enlace: Cómo usar la intención del reconocedor
Esto se puede hacer en unos sencillos pasos:
-
Cree algún tipo de botón en su actividad y coloque el código siguiente en su OnClickListener:
// Define MY_REQUEST_CODE como una constante int en su actividad … Uso ints en la startVoiceRecognitionActivity (MY_REQUEST_CODE, "Diga algo" de 10000s);
-
Anule el método onActivityResult () en su actividad. En la implementación, coloque una sentencia switch block o if para ejecutar alguna lógica cuando el argumento requestCode coincida con su constante MY_REQUEST_CODE. Una lógica similar a la siguiente le proporcionará la lista de resultados que la actividad de reconocimiento de voz cree haber escuchado:
ArrayList keywordMatches = data.getStringArrayListExtra (RecognizerIntent.EXTRA_RESULTS);
-
Puede obtener 0 o muchas coincidencias del reconocedor. Asegúrese de manejar todos los casos.
-
En algunos casos, el reconocedor de voz puede incluso no estar en el dispositivo. Trate de manejar eso donde llama a startVoiceRecognitionActivity ().
He encontrado este tutorial:
espero que esto ayude.
Ejemplo de Android VoiceRecognition de código abierto
Esta es una manera sencilla de manejar la búsqueda por voz
Paso 1 Llame a este método al hacer clic en el botón
public void startVoiceRecognition() { Intent intent = new Intent("android.speech.action.RECOGNIZE_SPEECH"); intent.putExtra("android.speech.extra.LANGUAGE_MODEL", "free_form"); intent.putExtra("android.speech.extra.PROMPT", "Speak Now"); this.mContainerActivity.startActivityForResult(intent, 3012); }
Paso 2 Anulación del método onActivityResult
@ Override public void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == 3012 && resultCode == RESULT_OK) { ArrayList < String > matches = data.getStringArrayListExtra("android.speech.extra.RESULTS"); String result= matches.get(0); //Consume result edittext.setText(result); } }
Eso es todo, hecho
- Transición de Conent NPE con elementos compartidos vacíos
- Android GridView última columna que se corta