背景:语音拍照功能的实现 不让用三方算法库
所以只能选择android 原生speechRecognizer
其实就是解决语音转文字 文字转好了逻辑就很好处理
speechRecognizer的用法
SpeechRecognizer 位于 android.speech package 中
源码:/frameworks/base/core/java/android/speech/SpeechRecognizer.java
即
import android.speech.SpeechRecognizer;
谷歌Android SpeechRecognizer的Docs位置:
https://developer.android.com/reference/android/speech/SpeechRecognizer.html
1.第一步,首先权限申请 android 6.0 之后都要动态申请权限
在androidManifest 中添加网络 以及音频权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
2.第二步,实例化一个speechRecognizer对象
利用SpeechRecognizer的createSpeechRecognizer方法该方法需要传递一个Context
speechRecognizer = SpeechRecognizer.createSpeechRecognizer(MainActivity.this);
3.第三步,设置识别监听文章来源:https://www.toymoban.com/news/detail-477241.html
speechRecognizer.setRecognitionListener((android.speech.RecognitionListener) new SampleRecognitionListener());
4.第四步,利用RecognitionListener实现监听逻辑文章来源地址https://www.toymoban.com/news/detail-477241.html
class SampleRecognitionListener implements RecognitionListener {
@Override
public void onReadyForSpeech(Bundle bundle) {
Log.d(TAG, "onReadyForSpeech Start");
Log.d(TAG, "onReadyForSpeech End");
}
@Override
public void onBeginningOfSpeech() {
Log.d(TAG, "onBeginningOfSpeech Start");
Log.d(TAG, "onBeginningOfSpeech End");
}
@Override
public void onRmsChanged(float v) {
Log.d(TAG, "onRmsChanged Start");
Log.d(TAG, "onRmsChanged End");
}
@Override
public void onBufferReceived(byte[] bytes) {
Log.d(TAG, "onBufferReceived Start");
到了这里,关于android speechRecognizer原生语音识别使用指南的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!