首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

百度導航 Android SDK 3.0 開發踩坑指南:算路失敗、語音授權、離線地圖

     編輯:PHP 相關知識

開發環境

  • MacBook Pro + Android Studio 1.4
  • 酷比魔方 7 寸平板測試機
  • 百度導航 SDK 3.0.0

跑通 Demo 流程

  1. 申請開發者賬號,創建應用獲取 AK(Key)。
  2. 下載 Demo 工程(官網),建議新建項目並拷貝相關文件,因 Key 綁定包名。
  3. 修改 AndroidManifest.xml 填入 Key,運行即可看到導航界面。

百度開發者中心

Demo UI

常見問題與解決

1. “算路失敗” — 經緯度順序顛倒

調用 BNRoutePlanNode 時,參數順序為 經度在前,緯度在後(即 x, y 對應 longitude, latitude)。筆者誤用 (lat, lng) 導致失敗,調換後正常。

// 正確:經度, 緯度
BNRoutePlanNode start = new BNRoutePlanNode(121.387211, 31.088074, ...);
BNRoutePlanNode end = new BNRoutePlanNode(121.523014, 31.277986, ...);

2. 無語音播報 — TTS 未授權

Logcat 報錯 bdTTSGetAuthorize failed!。SDK 內置百度 TTS 需授權,按 官方指引 完成應用授權即可。

3. 離線地圖與默認顯示位置

Demo 中 BaseMapDemo.java 的 onCreate 顯示:若 Intent 無 x/y 參數(對應經緯度),默認顯示北京。可通過 Bundle 傳參指定中心點:

Bundle bundle = new Bundle();
bundle.putDouble("y", 31.088074); // 緯度
bundle.putDouble("x", 121.387211); // 經度
intent.putExtras(bundle);
startActivity(intent);

離線城市包下載參考 Demo 中 BaseMapDemo 實現。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved