百度导航NaviDemo分析

百度导航NaviDemo分析 --  关键接口分析

1.   可能需要导入的包。。。。。





2.   两种接口分析。。。。



package baidumapsdk.demo;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

import com.baidu.mapapi.model.LatLng;
import com.baidu.mapapi.navi.BaiduMapAppNotSupportNaviException;
import com.baidu.mapapi.navi.BaiduMapNavigation;
import com.baidu.mapapi.navi.NaviPara;

public class NaviDemo extends Activity {

	// 天安门坐标
	double mLat1 = 39.915291;
	double mLon1 = 116.403857;
	// 百度大厦坐标
	double mLat2 = 40.056858;
	double mLon2 = 116.308194;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_navi_demo);
		TextView text = (TextView) findViewById(R.id.navi_info);
		text.setText(String.format("起点:(%f,%f)\n终点:(%f,%f)", mLat1, mLon1,
				mLat2, mLon2));
	}

	/**
	 * 开始导航
	 * 
	 * @param view
	 */
	public void startNavi(View view) {
		LatLng pt1 = new LatLng(mLat1, mLon1);
		LatLng pt2 = new LatLng(mLat2, mLon2);
		// 构建 导航参数
		NaviPara para = new NaviPara();
		para.startPoint = pt1;
		para.startName = "从这里开始";
		para.endPoint = pt2;
		para.endName = "到这里结束";

		try {

			BaiduMapNavigation.<span style="background-color: rgb(51, 255, 51);">openBaiduMapNavi</span>(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(NaviDemo.this);
				}
			});

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

			builder.create().show();
		}
	}

	public void startWebNavi(View view) {
		LatLng pt1 = new LatLng(mLat1, mLon1);
		LatLng pt2 = new LatLng(mLat2, mLon2);
		// 构建 导航参数
		NaviPara para = new NaviPara();
		para.startPoint = pt1;
		para.endPoint = pt2;
		BaiduMapNavigation.<span style="background-color: rgb(51, 255, 51);">openWebBaiduMapNavi</span>(para, this);
	}
}

  • openWebBaiduMapNavi
    public static void openWebBaiduMapNavi(NaviPara para,
                           Context context)
                                    throws IllegalNaviArgumentException
    调起百度地图导航页面
    参数:
    para - 导航参数:1、指定startPoint 和 endPoint;2、指定startName 和 endName;否则抛 IllegalNaviArgumentException
    context -
    抛出:
    IllegalNaviArgumentException - 非法导航参数
    另请参阅:
    NaviPara

类 NaviPara

字段  
限定符和类型 字段和说明
java.lang.String endName
导航终点名称
LatLng endPoint
导航终点, 百度经纬度坐标
java.lang.String startName
导航起点名称
LatLng startPoint
导航起点, 百度经纬度坐标


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值