关于百度导航SDK没声音的一种解决办法

大概就是。。。对着官方的demo写吧

首先。。申请百度地图的key(这尼玛不废话吗!)


其次  申请百度语音合成的key(这个我也知道啊!)


然后
Bundle bundle =  new  Bundle();
// 必须设置APPID,否则会静音
bundle.putString(BNCommonSettingParam.TTS_APP_ID,  "你申请的百度语音AppId,如下图" );

BNaviSettingManager.setNaviSdkParam(bundle);


 


   (这个我也知道!!!!)
好吧 我知道你看了这么多论坛 肯定知道了

那我最后再说一个好吧



还有 配置文件里面的

//百度语音识别KEY
<meta-data
    android:name="com.baidu.speech.APP_ID"
    android:value="你的Key" />
<meta-data
    android:name="com.baidu.speech.API_KEY"
    android:value="你的Key" />
<meta-data
    android:name="com.baidu.speech.SECRET_KEY"
    android:value="你的Key" />
//百度地图key
<meta-data
    android:name="com.baidu.lbsapi.API_KEY"
    android:value="你的Key" />
这4个一个都不能少


上面那句话的时机。。你写对了吗。。

官方demo上是写在


private void initSetting() {
   // BNaviSettingManager.setDayNightMode(BNaviSettingManager.DayNightMode.DAY_NIGHT_MODE_DAY);
   BNaviSettingManager.setShowTotalRoadConditionBar(BNaviSettingManager.PreViewRoadCondition.ROAD_CONDITION_BAR_SHOW_ON);
   BNaviSettingManager.setVoiceMode(BNaviSettingManager.VoiceMode.Veteran);
   // BNaviSettingManager.setPowerSaveMode(BNaviSettingManager.PowerSaveMode.DISABLE_MODE);
   BNaviSettingManager.setRealRoadCondition(BNaviSettingManager.RealRoadCondition.NAVI_ITS_ON);
   Bundle bundle = new Bundle();
   // 必须设置APPID,否则会静音
   bundle.putString(BNCommonSettingParam.TTS_APP_ID, "9354030");
   BNaviSettingManager.setNaviSdkParam(bundle);
}

然后initSetting这个方法是在


BaiduNaviManager.getInstance().init(this, mSDCardPath, APP_FOLDER_NAME, new NaviInitListener() {
   @Override
   public void onAuthResult(int status, String msg) {
      if (0 == status) {
         authinfo = "key校验成功!";
      } else {
         authinfo = "key校验失败, " + msg;
      }
      BNDemoMainActivity.this.runOnUiThread(new Runnable() {

         @Override
         public void run() {
            Toast.makeText(BNDemoMainActivity.this, authinfo, Toast.LENGTH_LONG).show();
         }
      });
   }

   public void initSuccess() {
      Toast.makeText(BNDemoMainActivity.this, "百度导航引擎初始化成功", Toast.LENGTH_SHORT).show();
      hasInitSuccess = true;
      initSetting();(看见了吧!)
   }

   public void initStart() {
      Toast.makeText(BNDemoMainActivity.this, "百度导航引擎初始化开始", Toast.LENGTH_SHORT).show();
   }

   public void initFailed() {
      Toast.makeText(BNDemoMainActivity.this, "百度导航引擎初始化失败", Toast.LENGTH_SHORT).show();
   }

}, null, ttsHandler, ttsPlayStateListener);


所以 你要做的就是  也在这里调一下。。。大概就行了吧。。。反正我是行了。。如果你还是不行 就在想想办法吧。(别忘了解决了发出来给大家0.0)


就酱0.0


其实主要原因一般是3个

1、没申请语音key
2、是语音合成的key没全部写到配置文件
3、没设置

Bundle bundle = new Bundle();
// 必须设置APPID,否则会静音
bundle.putString(BNCommonSettingParam.TTS_APP_ID, "9354030");
BNaviSettingManager.setNaviSdkParam(bundle);


最后贴张助手图

关于百度导航SDK没声音的一种解决办法_第1张图片


你可能感兴趣的:(百度导航SDK)