Reconnaissance de la parole, sans Google, les boîtes de dialogue
Je vais essayer d'utiliser la reconnaissance Vocale sans Google boîtes de dialogue avec RecognitionListener
mais ne fonctionne pas seulement bip lors du démarrage de l'application.J'ai ajouté des autorisations d'enregistrement Audio et de l'Internet dans le fichier de manifeste.J'espère que vous me dire et m'aider à trouver le mal...je n'ai pas d'erreurs sur le Log de chat...je veux faire une boucle lorsque l'utilisateur se dire bonjour un Toast en évidence un mesage Regognition OK et une vue de liste affiche les résultats.
public class MainActivity extends Activity implements RecognitionListener
{
private ListView wordsList;
private SpeechRecognizer mSpeechRecognizer;
private Intent mSpeechRecognizerIntent;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mSpeechRecognizer = SpeechRecognizer.createSpeechRecognizer(this);
mSpeechRecognizerIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
mSpeechRecognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
mSpeechRecognizerIntent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE,
this.getPackageName());
wordsList = (ListView) findViewById(R.id.listView1);
mSpeechRecognizer.startListening(mSpeechRecognizerIntent);
}
public void onBeginningOfSpeech(){ }
public void onBufferReceived(byte[] buffer){ }
public void onEndOfSpeech(){ }
public void onError(int error){
//mSpeechRecognizer.startListening(mSpeechRecognizerIntent);
}
public void onEvent(int eventType, Bundle params){ }
public void onPartialResults(Bundle partialResults){ }
public void onReadyForSpeech(Bundle params){
Toast.makeText(getBaseContext(), "Voice recording starts", Toast.LENGTH_SHORT).show();
}
public void onResults(Bundle results)
{
ArrayList<String> matches = results.getStringArrayList(SpeechRecognizer.RESULTS_RECOGNITION);
wordsList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, matches));
if ( matches.contains("hello") {
Toast.makeText(getBaseContext(), "Recognision OK!!!", Toast.LENGTH_SHORT).show();
}
}
public void onRmsChanged(float rmsdB) { }
}
essayez d'utiliser des allumettes.get(0) onResult
Je ne pense pas que c'est le problème...parce que dès le début du discours ne montre pas le Toast "de l'enregistrement de la Voix commence"...je l'utilise Samsung S4...
Voir le tutoriel: truiton.com/2014/06/... à Truiton
Double Possible de Comment puis-je utiliser la reconnaissance vocale, sans le désagrément de dialogue dans les téléphones android
Je ne pense pas que c'est le problème...parce que dès le début du discours ne montre pas le Toast "de l'enregistrement de la Voix commence"...je l'utilise Samsung S4...
Voir le tutoriel: truiton.com/2014/06/... à Truiton
Double Possible de Comment puis-je utiliser la reconnaissance vocale, sans le désagrément de dialogue dans les téléphones android
OriginalL'auteur user2342687 | 2013-11-01
Vous devez vous connecter pour publier un commentaire.
Vous avez manqué:
Le paramètre sera soit le contexte qui met en œuvre l'auditeur, ou les modules d'écoute personnalisés que vous avez créés.
Au moment de votre code n'est pas le réglage de l'écoute, vous avez juste le code d'écouteur.
Edit: Si vous n'implémentez pas
RecognitionListener
, alors vous pouvez le faire de cette façon:Depuis votre code
implements RecognitionListener
je supposethis
serait l'utilisation correcte. Je vais modifier ma réponse à montrer une autre manière.Ok œuvres mSpeechRecognizer.setRecognitionListener(ce); je vous Remercie beaucoup!!!!!!!!!!!
Comment je peux faire de boucle automatique de la parole toutes les x secondes?
Voir cette réponse stackoverflow.com/q/14940657/1256219
OriginalL'auteur brandall
essayer ce code
activity_voice_recognition.xml
AndroidManifest.xml
Manifest.permission.RECORD_AUDIO
avant d'utiliser la voix de l'apiOriginalL'auteur Faisal Khan