跳到主要內容
黯羽輕揚每天積累一點點

Android 開發基於百度地圖的乘車助手

免費2015-03-16#Android#Toy#百度地图开发#公交查询#乘车方案

如何利用百度地圖 API 開發乘車助手(乘車方案查詢,公車路線詳情查詢),官方 APP 既費流量又佔記憶體還有廣告...那麼為何不自己動手去做一個呢?

寫在前面:

出去玩免不了擠公車、等捷運,不知道乘車方案當然不行,用官方 APP 吧,缺點一大堆,手機瀏覽器線上查的話既慢又麻煩...為了解決這些問題,我們來做一個簡版的出行助手,媽媽再也不用擔心我會迷路了_\^o^/_

一. 功能需求分析

基礎功能:

  1. 能夠根據起點站和終點站查詢乘車方案,並顯示多種乘車方案
  2. 能夠根據公車路線號查詢沿途站點(防止坐過站...)

擴充功能:

  1. GPS 定位獲取起點站(距離目前位置最近的站點名)[後來放棄了,費電,費流量...]
  2. 顯示地圖[後來也放棄了,地圖對用戶來說好像沒什麼太大用處(當然喜歡走路的另當別論),至少對本人來說地圖沒什麼用]

二. 可實現性分析

1. 百度地圖開放平台提供的 API 可以實現乘車方案查詢

2.3.4. 同上,結論:完全可以實現需要的所有功能

三. 開發前提

  1. 需要 BaiDuMap 的開發者帳號
  2. 需要 key(現在新版的地圖 key 與 App 唯一綁定)
  3. 需要官方提供的 jar 包

搜尋一下“百度地圖開發”,上面的三件事情分分鐘搞定(說到這裡不得不讚一下這極低的門檻了,騰訊、新浪微博...的開發者帳號就很難認證,有的甚至需要上傳身分證影本...)

四. 研究 API 文件以及 Demo

API 文件說實話做得不怎麼樣,函數詳解都只有一句話,建議直接看 Demo,附有大量注釋,簡單易懂

五. 開始編碼(下面給出的源碼都親測可用,並附有最詳細的注釋)

源碼見[源碼下載]

P.S. 源碼都在上面,如有疑問請在下方留言

六. 顯示地圖

[最先實現的就是這個(第一次開發地圖有點激動,想看看地圖長什麼樣子...),在需求中本沒打算設計,雖然後來放棄了,但下面的源碼仍然親測無誤]

源碼見[源碼下載]

七. 離線地圖

離線地圖好處多多,但若是要開發需要推廣給眾多用戶的 App 的話,建議要麼做下載離線地圖包功能(Demo 中有例程,很容易),要麼考慮在 App 第一次運行的時候把 APK 資源文件中的離線地圖複製到用戶 SD 卡中(理論上可以實現),當然這樣的話地圖適用範圍會受到限制,開發有明確地域限制的 App 可以選用(例如:西安出行助手)。

離線地圖是這樣用的:

  1. 把從官網下載的資料夾整個複製到手機 SDCARD 指定路徑(具體放哪裡請看壓縮包中的 ReadMe.txt 介紹)
  2. 在程式中需要對離線地圖包進行 scan 初始化(其本質是對地圖包的解析,把一個大文件變成了幾個小文件,所以,不進行解析的話地圖包是不能用的)
  3. 貌似顯示地圖的方法會自動判斷(優先使用離線地圖,如果有的話)

八. 運行介面截圖

評論

暫無評論,快來發表你的看法吧

提交評論