Android开发调用手机上安装的地图应用导航 |
您所在的位置:网站首页 › 下载并安装百度地图到手机上 › Android开发调用手机上安装的地图应用导航 |
项目开发过程中需要调用地图应用进行导航,通常会使用百度地图和高德地图,调用地图看官方文档就可以搞定。 首先根据包名判断地图应用是否安装: 百度地图包名:com.baidu.BaiduMap高德地图包名:com.autonavi.minimap /** * 根据包名判断某个app是否安装 * @param packageName * @return */ public static boolean isAppInstalled(Context context,String packageName){ PackageInfo packageInfo; try { packageInfo = context.getPackageManager().getPackageInfo(packageName, 0); } catch (PackageManager.NameNotFoundException e) { packageInfo=null; e.printStackTrace(); } if(packageInfo==null){ return false; }else { return true; } }判断完应用是否安装后就可以调用API了 百度地图百度地图 doc:http://lbsyun.baidu.com/index.php?title=uri/api/android 代码实现: /** * 跳转到百度地图 * @param context 使用Application * @param latitude * @param longitude */ public void goToBMap(Context context, String latitude,String longitude) { String uri = "baidumap://map/direction" + "?origin=我的位置" +"&destination=name:终点|latlng:"+latitude+","+longitude +"&coord_type=bd09ll" + "&mode=driving" + "&src=andr.companyName.appName";//src为统计来源必填,companyName、appName是公司名和应用名 Intent intent = new Intent("android.intent.action.VIEW", Uri.parse(uri)); intent.addCategory("android.intent.category.DEFAULT"); context.startActivity(intent); } //具体参数可以参考官方文档 高德地图高德地图 doc:https://lbs.amap.com/api/amap-mobile/guide/android/route 代码实现: /** * 跳转到高德地图 * @param context 使用Application * @param latitude * @param longitude */ public void goToBMap(Context context, String latitude,String longitude) { //默认驾车 String uri = "amapuri://route/plan/" + "?dlat="+ latitude+"&dlon="+longitude + "&sname=我的位置" + "&dname=终点" + "&dev=1" + "&t=0"; Intent intent = new Intent("android.intent.action.VIEW", Uri.parse(uri)); intent.addCategory("android.intent.category.DEFAULT"); intent.setPackage("com.autonavi.minimap"); context.startActivity(intent); } //具体参数可以参考官方文档通过上面的操作就可以实现调用手机上安装的地图应用导航。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |