项目中遇到一个需求需要用户选择调起百度或高德地图进行导航 记录一下
百度地图
try {
LatLng startLatLng = new LatLng(39.940387, 116.29446);
LatLng endLatLng = new LatLng(39.87397, 116.529025);
String uri = String.format("baidumap://map/direction?origin=%s,%s&destination=" +
"%s,%s&mode=driving&src=com.34xian.demo", startLatLng.latitude, startLatLng.longitude,
endLatLng.latitude, endLatLng.longitude);
Intent intent = new Intent();
intent.setData(Uri.parse(uri));
startActivity(intent);
}
catch (ActivityNotFoundException e) {
ToastUtil.showShort(this, "请安装百度地图");
}
腾讯地图
if (AppQQMapUtil.isInstalled()){
AppQQMapUtil.invokeNavi(mContext,"drive",null,null,null,地址名字,纬度+","+经度,null,"textApp");
}else {
ToastUtil.showToast(mContext,"尚未安装腾讯地图,请先下载安装");
}
高德地图
try {
String uri = String.format("amapuri://route/plan/?dlat=%s&dlon=%s&dname="+medicalBean.getName()+"&dev=0&t=0", gdLatitude, gdLongitude);
Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
intent.addCategory("android.intent.category.DEFAULT");
intent.setData(Uri.parse(uri));
intent.setPackage("com.autonavi.minimap");
startActivity(intent);
}
catch (ActivityNotFoundException e) {
ToastUtil.showToast(mContext, "尚未安装高德地图,请先下载安装");
}