百度地图SDK for Android【Demo调起百度地图客户端导航功能】

百度地图Android SDK V2.1.1为广大开发者提供调起百度地图客户端Android版(v5.0及以上版本)导航功能。


基本过程:首先确定需要导航的起点、终点,然后调用BaiduMapNavigation类的openBaiduNavi(NaviPara para, Activity context)来调起百度地图客户端导航页面。该方法更多详细信息请参考百度地图API->Android SDK->类参考中关于BaiduMapNavigation类的详解。


我将通过下面的讲解,教大家一步一步如何去调用百度地图客户端的导航功能。


第一步创建Android工程,导入百度地图开发包,在AndroidManifest.xml中添加各种权限,具体介绍请参考:百度SDK for Android【Demo地图展示】中的第一步和第二步操作;


第二步,创建需要导航的起点和终点。代码如下:

double mLat1 = 39.915; 
	   	double mLon1 = 116.404; 
	   	double mLat2 = 32.032;
	   	double mLon2 = 118.799;
	   	
	   	int lat = (int) (mLat1 *1E6);
	   	int lon = (int) (mLon1 *1E6);   	
	   	GeoPoint pt1 = new GeoPoint(lat, lon);
		lat = (int) (mLat2 *1E6);
	   	lon = (int) (mLon2 *1E6);
	    GeoPoint pt2 = new GeoPoint(lat, lon);

第三步调用BaiduMapNavigation类的openBaiduNavi(NaviPara para, Activity context)来调起百度地图客户端导航页面,如果用户之前未安装百度地图客户端V5.0及以上版本,或者当前百度地图客户端版本过低,会首先提示用户下载和更新百度地图客户端。代码如下:

NaviPara para = new NaviPara();
        para.startPoint = pt1;
        para.startName= "从这里开始";
        para.endPoint  = pt2;
        para.endName   = "到这里结束";
        
        try {
        	
			 BaiduMapNavigation.openBaiduMapNavi(para, this);
			 
		} catch (BaiduMapAppNotSupportNaviException e) {
			e.printStackTrace();
			  AlertDialog.Builder builder = new AlertDialog.Builder(this);
			  builder.setMessage("您尚未安装百度地图app或app版本过低,点击确认安装?");
			  builder.setTitle("提示");
			  builder.setPositiveButton("确认", new OnClickListener() {
			   @Override
			   public void onClick(DialogInterface dialog, int which) {
				 dialog.dismiss();
				 BaiduMapNavigation.GetLatestBaiduMapApp(MainActivity.this);
			   }
			  });

			  builder.setNegativeButton("取消", new OnClickListener() {
			   @Override
			   public void onClick(DialogInterface dialog, int which) {
			    dialog.dismiss();
			   }
			  });

			  builder.create().show();
			 }

第四步,运行工程,调起百度地图客户端导航功能,显示结果如下:

百度地图SDK for Android【Demo调起百度地图客户端导航功能】


原示例工程代码稍后上传至百度云盘,请耐心等待。


更多详细信息请登录百度地图API官方网站:http://developer.baidu.com/map/
百度地图API论坛:http://bbs.lbsyun.baidu.com/

你可能感兴趣的:(android)