Entrada de voz para rellenar Editar texto en android?

Estoy trabajando en la entrada de voz en android. Utilicé la muestra de

Http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/VoiceRecognition.html

Y mientras probaba en Xperia X10, recibí el diálogo "Hablar ahora" pero antes de ingresar alguna voz se cierra. Estoy tratando de implementar la búsqueda por voz, por ejemplo, si la entrada de voz es James Bond, entonces quiero rellenar el James en el nombre Editar texto y enlace en el apellido Editar texto. Que buscará en la base de datos el nombre. Pero al intentar usar la muestra de demostración API, no funciona. Puede ser que me estoy perdiendo algo. ¿Alguien publicará alguna muestra para la entrada de voz en vez de la muestra de ApiDemos?

Gracias por adelantado.

Puede utilizar el siguiente código para el reconocimiento de voz. Para obtener un tutorial completo para reconocimiento de voz, haga clic aquí .

import android.app.Activity; import android.os.Bundle; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.speech.RecognizerIntent; import android.view.View; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import java.util.ArrayList; import java.util.List; /** * A very simple application to handle Voice Recognition intents * and display the results */ public class VoiceRecognitionDemo extends Activity { private static final int REQUEST_CODE = 1234; private ListView wordsList; /** * Called with the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.voice_recog); Button speakButton = (Button) findViewById(R.id.speakButton); wordsList = (ListView) findViewById(R.id.list); // Disable button if no recognition service is present PackageManager pm = getPackageManager(); List<ResolveInfo> activities = pm.queryIntentActivities( new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0); if (activities.size() == 0) { speakButton.setEnabled(false); speakButton.setText("Recognizer not present"); } } /** * Handle the action of the button being clicked */ public void speakButtonClicked(View v) { startVoiceRecognitionActivity(); } /** * Fire an intent to start the voice recognition activity. */ private void startVoiceRecognitionActivity() { Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH); intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Voice recognition Demo..."); startActivityForResult(intent, REQUEST_CODE); } /** * Handle the results from the voice recognition activity. */ @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) { // Populate the wordsList with the String values the recognition engine thought it heard ArrayList<String> matches = data.getStringArrayListExtra( RecognizerIntent.EXTRA_RESULTS); wordsList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, matches)); } super.onActivityResult(requestCode, resultCode, data); } } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.