之前说Baymax 的UI设计,现在UI设计好了,我们得开始讲一讲识别方面的事了。这里我们需要用到百度的语音识别技术,大家可以先上百度语音开放平台,上面有开发手册和demo帮助大家学习。贴上连接:http://yuyin.baidu.com/
前面注册百度开发者的那些步骤我就跳过了,基本上开发手册写的很详细了。这里我就不再多说。
首先是注册可能需要用到的权限
<span style="font-size:14px;"><uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /></span>
然后是填上自己在百度申请到的秘钥 <!--请填写应用实际的APP_ID --> <meta-dataandroid:name="com.baidu.speech.APP_ID"android:value="your app id"/> <!--请填写应用实际的API_KEY --> <meta-dataandroid:name="com.baidu.speech.API_KEY"android:value="your api key"/> <!--请填写应用实际的SECRET_KEY --> <meta-dataandroid:name="com.baidu.speech.SECRET_KEY"android:value="your api secret"/>
导入所需资源包之后(在百度语音开发平台官网可以下载),就要开始调用了
首先是创建识别器及识别器监听事件
<span style="font-size:18px;"> //创建识别器
speechRecognizer=SpeechRecognizer.createSpeechRecognizer(this,new ComponentName(this,VoiceRecognitionService.class));
//识别器监听事件
speechRecognizer.setRecognitionListener(this);
</span>
监听器需要重写的方法有如下这些,我加以详细说明,开发者根据开发需要重写内容即可
@Override
public void onReadyForSpeech(Bundle params) {
//准备监听时事件
}
@Override
public void onBeginningOfSpeech() {
//开始监听事件
}
@Override
public void onRmsChanged(float rmsdB) {
//声音级别更改时调用的方法
}
@Override
public void onBufferReceived(byte[] buffer) {
//反馈给用户捕获的音频
}
&#