Android开发基于百度地图的乘车助手

写在前面:

出去玩免不了挤公交、等地铁,不知道乘车方案当然不行,用官方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. 貌似显示地图的方法会自动判断(优先使用离线地图,如果有的话)

八.运行界面截图

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

code