1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > androidstudio的语音唤醒功能

androidstudio的语音唤醒功能

时间:2021-12-16 20:47:33

相关推荐

androidstudio的语音唤醒功能

Manifest配置 写在application之外

<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" />

application之内 具体去百度获取

<meta-data android:name="com.baidu.speech.APP_ID"android:value="27211644" /><meta-dataandroid:name="com.baidu.speech.API_KEY"android:value="OAxuKkyV6UlMINvTDDA3KAG8" /><meta-dataandroid:name="com.baidu.speech.SECRET_KEY"android:value="sEURzbgzrw2Nto1gBxGKsFLI14r7IcBq" />

语音唤醒获取获取Wakeup.bin

语音唤醒-百度AI开放平台 ()

WakeUpbin放在

同时导入jinLibs在安卓下的包里有

libs的导入 右键加入到Library当中

简单的语音唤醒

public class MainActivity extends AppCompatActivity implements EventListener {private EventManager wakeup;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initPermission();wakeup = EventManagerFactory.create(this, "wp");// 基于SDK唤醒词集成1.3 注册输出事件wakeup.registerListener(this); //start();}private void start() {Map<String, Object> params = new TreeMap<String, Object>();params.put(SpeechConstant.ACCEPT_AUDIO_VOLUME, false);params.put(SpeechConstant.WP_WORDS_FILE, "assets:///WakeUp.bin");String json = null;json = new JSONObject(params).toString();wakeup.send(SpeechConstant.WAKEUP_START, json, null, 0, 0);}protected void onDestroy() {super.onDestroy();wakeup.send(SpeechConstant.WAKEUP_STOP, "{}", null, 0, 0);}@Overridepublic void onEvent(String name, String params, byte[] bytes, int i, int i1) {if ("wp.data".equals(name)) {JSONObject json = null;String word= null;try {json = new JSONObject(params);word= json.getString("word");Toast toast = Toast.makeText(this, word , Toast.LENGTH_SHORT);toast.show();} catch (JSONException e) {e.printStackTrace();}}}private void initPermission() {String[] permissions = {Manifest.permission.RECORD_AUDIO,Manifest.permission.ACCESS_NETWORK_STATE,Manifest.permission.INTERNET,Manifest.permission.WRITE_EXTERNAL_STORAGE};ArrayList<String> toApplyList = new ArrayList<String>();for (String perm : permissions) {if (PackageManager.PERMISSION_GRANTED != ContextCompat.checkSelfPermission(this, perm)) {toApplyList.add(perm);}}String[] tmpList = new String[toApplyList.size()];if (!toApplyList.isEmpty()) {ActivityCompat.requestPermissions(this, toApplyList.toArray(tmpList), 123);}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。