1、基于基于AndroidAndroid系统电子地图系统电子地图加载与实现加载与实现学校名称:吉林建筑大学学院名称:测绘与勘查工程学院指导教师:学生姓名:目 标l主要介绍的内容:主要介绍的内容:l1.需求分析需求分析l2.Baidu Map Android SDK Baidu Map Android SDK 简介简介l3.总体设计总体设计l4.开发与运行环境开发与运行环境l5.功能设计功能设计l6.功能演示功能演示l7.总结总结1.需求分析l 随着信息化建设的飞速发展,人们的需求也不断地提高,对导航系统的需求也在持续增加。与此同时,iOS、Android、Windows Phone等智能手机系统的
2、发展,使手机已不再只有简单的通讯功能,其强大的可扩展性为用户提供了用手机进行各类娱乐活动、完成各项工作任务的可能,导航软件也成为智能手机的标准配备。再加上智能手机也已经成为了人们生活的一部分,能在手机端实现一款导航软件将会给出行或旅游的朋友们带来诸多的方便。2.Baidu Map Android SDK 简介l Baidu Map Android SDK是一套基于Android 1.5及以上版本设备的地图开发工具。您可以使用该套 SDK开发适用于Android系统移动设备的地图应用,通过调用地图SDK接口,您可以轻松访问百度地图服务和数据,构建功能丰富、交互性强的地图类应用程序。百度地图And
3、roid SDK提供的所有服务是免费的,接口使用无次数限制。l 特点是操作方便、简单,易于上手。3.总体设计l 模块关系图:3.总体设计l 模块功能:界面模块显示地图和地物与用户进行交互 后台程序模块业务逻辑处理解析数据 数据模块提供数据4.开发与运行环境l 开发工具百度推荐开发者使用Eclipse作为自己的开发工具。l 开发语言javal 运行环境 Android 操作系统 2.1以上;内存RAM 512MB 以上;存储空间 512MB 以上4.开发与运行环境l 开发环境集成 首先在百度官网上获得密钥,然后找到新建工程的libs文件夹,将开发包里baidumapapi_v2_1_1.jar拷
4、贝到libs根目录下,将libapp_BaiduMapApplib_v2_1_1.so和libvi_vo slib.so拷贝到libsarmeabi目录,baidumapapi_v2_1_1.j ar考到根目录下,如图所示:4.开发与运行环境l 开发环境集成 之后根据需求在Manifest中添加使用权限及Android版本支持。其中包括“使用网络功能所需权限”、“SDK离线地图和cache功能需要读写外部存储器”、“获取设置信息和详情页直接拨打电话需要以下权限”、“使用定位功能所需权限”、“添加屏幕及版本支持”5类14个权限,比如:5.功能设计l 设计实现功能包括:u用户验证u地图加载与显示u
5、用户定位u交通状况u卫星云图u城市定位u模糊查询u周边查询6.功能演示 启动系统后,用进入登陆界面,当用户名与密码同时输入正确时,用户便可登录系统。l 用户验证:6.功能演示 用户登录成功以后接着进入左侧的系统的主界面;主界面是由上下两状态栏,中间地图显示窗口,左上方的菜单按钮,以及右下方的缩放按钮组成;用户登录以后,屏幕中间显示的箭头就是用户的当前位置。l 地图加载与显示,用户定位:6.功能演示 点击屏幕左上方的按钮,屏幕左侧会弹出功能菜单;菜单包括一个文本输入域和三个工具栏;功能菜单是“交通状况”、“卫星云图”、“城市定位”、“模糊查询”、“周边查询”功能的入口。l 功能菜单:6.功能演示
6、 打开功能菜单,点击“设置”菜单栏,点击“交通状况”按钮,地图上会显示当前的交通状况;其中绿色是畅通路段、黄色是繁忙路段、红色是拥挤路段不过该功能必须有网络支持才能显示当前交通状况。l 交通状况功能:6.功能演示 打开功能菜单,点击“设置”菜单栏,点击“卫星云图”按钮,地图会加载卫星的航拍图片;该功能也需要网络支持。l 卫星云图功能:6.功能演示 打开功能菜单,点击“城市”菜单栏,再点击某一省的按钮,屏幕中央会显示出该省所包含城市的列表;选中某一个城市确定,地图中心会平移到该城市 该功能不需要网络支持。l 城市定位功能:6.功能演示 打开功能菜单,点击屏幕上方的文本输入域会弹出键盘,输入要搜索
7、的信息比如说“长春”,点击键盘上的“搜索”,屏幕的视野会平移到长春市的位置;该功能也需要网络支持。l 模糊查询功能:6.功能演示 打开功能菜单,点击“附近”菜单,点击其中一个按钮,地图上会显示出10个POI。屏幕下方的状态栏也会变化为显示当前页数,通过左右按钮可以进行分页显示;该功能需要网络支持。l 周边查询功能:7.总 结l 在这个过程中,我学会了很多知识,比如Android环境的搭建、Intent、Activity、SQLite等;掌握了Baidu Map SDK开发环境搭建,地图加载、定位、查询等常用接口,但我学会的最重要的一点是,利用现有的资源去解决问题,在图书馆、在网络上寻找答案,从前人那里吸取经验,开阔自己思路。并且掌握一部分的Android的编程思想和开发理念。