AndroidManifest.xml配置
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<service android:name="com.baidu.speech.VoiceRecognitionService" android:exported="false" /><meta-data
android:name="com.baidu.speech.APP_ID"
android:value="" />
<meta-data
android:name="com.baidu.speech.API_KEY"
android:value="" />
<meta-data
android:name="com.baidu.speech.SECRET_KEY"
android:value="" />
语音唤醒代码:
package com.cn.baidufacetest;
import java.util.HashMap;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.JSONStringer;
import com.baidu.speech.EventListener;
import com.baidu.speech.EventManager;
import com.baidu.speech.EventManagerFactory;
import com.baidu.speech.asr.SpeechConstant;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
public class SpeechWakeUpActivity extends Activity{
private EventManager wp;
private EventListener mEventListenerwp;
private TextView speech_wakeup_result;
private TextView speech_result;
private static final int SOURCE_WAKE_UP = 100000;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.speech_wake_up_main);
wp = EventManagerFactory.create(this, "wp");
mEventListenerwp = new EventListener() {
@Override
public void onEvent(String name, String params, byte[] data, int offset, int length) {
// 唤醒成功
if (name.equals("wp.data")) {
try {
JSONObject json = new JSONObject(params);
int errorCode = json.getInt("errorCode");
if (errorCode == 0) {
// 唤醒成功
speech_wakeup_result.setText("唤醒结果:成功");
speech_result.setText("有什么吩咐");
Intent intent = new Intent(getApplicationContext(),SpeechRecognitionActivity.class);
intent.putExtra("source", "WakeUP");
startActivityForResult(intent, SOURCE_WAKE_UP);
} else {
speech_wakeup_result.setText("唤醒结果:失败,再次唤醒中。。。。");
// 唤醒失败
HashMap<String, Object> map = new HashMap<String, Object>();