侵权投诉
订阅
纠错
加入自媒体

采用google地图的Android系统导航应用设计

2013-11-07 14:52
空白小盒子
关注

  四、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);

  五、导航功能实现

  在正式版本的Android SDK 中,移除了原有M5 版本里面的DrivingDirection package,所以无法透过程序来规划导航线路。因此导航功能的实现我们是通过载入web 导航网页的方式实现的。Android 提供了一个名为WebView的控件来专门浏览网页。

  WebView控件是基于WebKit 浏览器网页排版引擎的一个java接口,它能够完美支持html、javascript、css.有时我们可以把整个UI 甚至数据处理都交给WebView,配合PHP 等服务器端程序,这样的Android 应用开发更为简单UI 更为丰富。因此本系统的导航功能的主要工作就集中在编写Google Map Api javascript 版本的导航网页以及WebView与javascript 的数据交互中。

  1、WebView 的定义及设置:

  首先要在XML 布局文件中定义WebView控件;然后在程序中装载这个控件,设置属性;最后通过loadUrl 方法实现网页的载入。

  WebView 常用的类有:WebSettings、WebViewClient、WebChromeClient.

  WebSettings 用来设置WebView的一些属性状态,如:

  // 设置可以访问文件

  webSettings.setAllowFileAccess(true);

  // 设置支持缩放

  webSettings.setBuiltInZoomControls(true);

  WebViewClient 专门辅助WebView处理各种通知、请求等事件类,通过WebView 的setWebViewClient 方法来指定一个WebViewClient 对象,如下:

  webView.setWebViewClient(newWebViewClient()

  {

  public boolean shouldOverrideUrlLoading(WebViewview,String url){

  view.loadUrl(url);

  return true;

  }

  })

  WebChromeClient 类专门用来辅助WebView对话框、网站图标、网站Title、加载进度等。使用方法如下:

  webView.setWebChromeClient(newWebChromeClient()

  {

  @Override

  // 该方法为处理javascript 中的alert 事件

  public boolean onJsAlert (WebView view,String url,Stringmessage,

  JsResult result){

  // TODO Auto- generated method stub

  return super.onJsAlert(view,url,message,result);

  });

  设置完WebView后主要工作就是Html 网页的编写。

<上一页  1  2  3  下一页>  
声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

文章纠错
x
*文字标题:
*纠错内容:
联系邮箱:
*验 证 码:

粤公网安备 44030502002758号