您的位置首页>硬件>

基于Google Map Api的Android导航应用

导读 大家好,我是极客范的本期栏目编辑小友,现在为大家讲解基于Google Map Api的Android导航应用问题。一 导言。导航软件在智能手机中的应用

大家好,我是极客范的本期栏目编辑小友,现在为大家讲解基于Google Map Api的Android导航应用问题。

一.导言。

导航软件在智能手机中的应用已经成为研究热点之一。目前大部分智能手机都提供GPS定位服务,3G无线网络也越来越普及,在谷歌地图中实现导航服务是可行的。

提出并实现了一个基于谷歌地图Api的安卓导航应用,可以为用户提供人性化、智能化的地图导航服务。

第二,系统架构。

三是UI界面设计。

Android应用的基本功能单元是ActiVe类中的一个对象,ActiVe的主要功能是界面显示和事件处理。在活动中,视图和视图组控件以XML样式用于界面设计,事件处理用于人机交互。主要事件处理是按钮事件、触摸屏事件和一些高级控件的事件监控。UI界面是通过设置控件和事件处理形成的。

1.显示GPS定位信息。

通过文本视图控件显示定位信息。程序打开后,会显示当前用户的具体位置、邮政编码、门牌号等相关信息。如果全球定位系统定位不成功或错误,将显示“无法获取当前地址”。

2.用户输入导航起点。

通过设置EditView控件,用户可以在修改后的控件中输入导航的起始点,通过设置名为“navigation”的ButtON控件提交输入信息,在Button OnClick被监控时分析起始地址,如果起始地址可以解析,则加载导航地图,如果另一个地址解析失败,则通过Dialog box控件对话框提示用户“地址输入不正确,请重新输入”。

3.导航界面设计。

在导航界面中设置WebView控件,WebView控件通过与javascript的相互调用,将起始地址等信息传递给服务器中的HTML导航网页。获取地址等信息后,通过WebView控件在应用导航界面进行导航显示。

4.语音功能界面设计。

在导航界面设置一个名为语音导航的Button控件,当用户按住按钮时,为用户提供语音导航服务。

下图是定位和输入地址信息的界面:

4.GPS定位功能的实现。

全球定位系统(Global PosiTIoning System,简称GPS)是一种中程环形轨道卫星导航系统,可为地球表面98%以上的区域提供精确定位、测速和高精度时间标准服务,广泛应用于各个领域。

安卓支持GPS服务的API。该服务可用于获取当前设备的地理位置,应用程序可通过该API获取地理位置,并可定期请求更新当前设备的地理位置信息。该系统将使用GPS API封装几个重要的功能类:LocATIonManager,用于管理Android用户位置服务;LocationProvider,提供多种定位模式供开发者选择;标准是通过位置提供程序中设置的属性选择合适的位置提供程序。

获取用户的当前位置,如下所示:

1.在AndroidManifeST.xml中声明相应的权限:

Android : name='"Android . permission . ACCESS _ ROUGH _ LOCATION"'权限

2.获取LocationManager对象:

位置管理器位置管理器=(位置管理器)获取系统服务(上下文。LOCATION _ SERVICE);

3.设置标准对象:

criteria criteria=new criteria();

标准。设置准确性(标准。精度_精细);

criteria . setaltidurerequired(false);

criteria . setbearing required(false);

criteria . setcosallowed(false);

标准。设置权力要求(标准。POWER _ LOW);

4.设置提供商:

string provider=location manager . getbestprovider(条件,true);

location location=location manager . GetLastknownllocation(提供程序);

p>  一、引言

  导航软件在智能手机中的应用成为了研究热点之一。在目前大部分智能手机都提供GPS 定位服务以及3G 无线网络越来越普及的双重驱动下,在Google 地图中实现导航服务,是具有可行性的。

  本文提出并实现了一种基于Google Map Api 的Android 导航应用,能够给用户提供人性化和智能化的地图导航服务。

  二、系统体系结构

  

  三、UI 界面设计

  Android 应用程序的基本功能单元就是AcTIvity 类中的一个对象,AcTIvity 主要功能为界面显示和事件处理。在AcTIvity 中使用View和ViewGroup 控件配XML 样式来进行界面设计,使用事件处理进行人机交互,主要的事件处理为按钮事件、触屏事件以及一些高级控件的事件监听。通过设置控件与事件处理就形成了UI 界面。

  1、GPS 定位信息的显示

  通过textView控件显示定位信息。在程序打开时就显示目前用户的具体位置和邮编,门牌号等相关信息,若GPS 定位不成功或者出错,则显示“无法获取目前地址”。

  2、用户输入导航起始地点

  通过设置EditView控件,用户能在改控件中输入自己需要导航的起始地点,通过设置名为“导航”的ButtON 控件对输入信息进行提交,当监听到Button 按钮OnClick 时则分析起始地址,若起始地址都能被解析,则载入导航地图,若又一个地址解析失败,则通过对话框控件Dialog 提示用户“输入地址错误,请重新输入”。

  3、导航界面设计

  在导航界面中设置WebView 控件,WebView 控件通过与javascript 互相调用,把起始地址等信息传递给服务器中的HTML 导航网页。网页获得地址等信息后进行导航并通过WebView控件显示在应用程序导航界面中。

  4、语音功能界面设计

  在导航界面中设置名为语音导航的Button 控件,当用户按住该按钮时就为用户提供语音导航服务。

  下图为定位与输入地址信息UI 界面:

  

  四、GPS 定位功能实现

  全球卫星定位系统(Global PosiTIoning System,GPS)是一个中距离圆型轨道卫星导航系统,它可以为地球表面超98%的地区提供准确的定位、测速和高精度的时间标准服务,在各个领域都有广泛的应用。

  Android 支持GPS 服务的API.该服务可以用来获取当前设备的地理位置,应用程序通过该API 获得地理位置,并可以定时请求更新当前设备的地理定位信息。该系统将用到GPS API 中包几个重要的功能类:LocATIonManager,用于管理Android 用户定位服务;LocationProvider,提供多种定位方式供开发者选择;Criteria,是应用通过LocationProvider 中设置的属性来选择合适的定位提供者。

  获取用户当前位置的步骤如下:

  1、在AndroidManifeST.xml 中声明相应的权限:

  < android:name="“android.permission.ACCESS_COARSE_LOCATION”" permission>

  2、获取LocationManager 对象:

  LocationManager locationManager =(LocationManager)getSystemSERvice (Context.LOCATION_SERVICE);

  3、设置Criteria 对象:

  Criteria criteria = newCriteria();

  criteria.setAccuracy(Criteria.ACCURACY_FINE);

  criteria.setAltitudeRequired(false);

  criteria.setBearingRequired(false);

  criteria.setCostAllowed(false);

  criteria.setPowerRequirement(Criteria.POWER_LOW);

  4、设置Provider:

  String provider = locationManager.getBestProvider(criteria,true);

  Location location= locationManager.getLastKnownLocation(provider);

   技术专区 CPU一级缓存与二级缓存深度分析eMMC海量烧录困境,你真的知道吗?隔离反激和非隔离BUCK应用设计方案肖特基势垒二极管选择及应用指南方案设计中如何运用Altium Designer拼板?

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。