当前位置导航到某个地方,还可以设置出发地的经纬度和位置信息,具体看各官网参数设置。

以下代码可以直接使用。

/*** Date: 2022-11-23* Author: lanzi* 调用第三方地图app导航*/
public class MapNavigationUtils {public static final String PN_GAODE_MAP = "com.autonavi.minimap";// 高德地图包名public static final String PN_BAIDU_MAP = "com.baidu.BaiduMap"; // 百度地图包名public static final String PN_TENCENT_MAP = "com.tencent.map"; // 腾讯地图包名/*** 检查地图应用是否安装*/public static boolean isGaodeMapInstall(Context context) {return isInstallPackage(context, PN_GAODE_MAP);}public static boolean isBaiduMapInstall(Context context) {return isInstallPackage(context, PN_BAIDU_MAP);}public static boolean isTencentMapInstall(Context context) {return isInstallPackage(context, PN_TENCENT_MAP);}private static boolean isInstallPackage(Context context, String packageName) {try {PackageManager packageManager = context.getPackageManager();PackageInfo info = packageManager.getPackageInfo(packageName, 0);if (info != null) {return true;}} catch (Exception e) {// loge(e);}return false;}/*** 打开高德地图导航(https://lbs.amap.com/api/amap-mobile/guide/android/route)** @param context   context* @param address   终点名称* @param latitude  终点纬度* @param longitude 终点经度*/public static void openGaodeNavigation(Context context, String address, double latitude, double longitude) {if (isGaodeMapInstall(context)) {Uri uri = Uri.parse("amapuri://route/plan/?dlat=" + latitude+ "&dlon=" + longitude+ "&dname=" + address+ "&dev=0&t=0");Intent intent = new Intent(Intent.ACTION_VIEW, uri);context.startActivity(intent);} else {Toast.makeText(context, "未安装高德地图", Toast.LENGTH_LONG).show();}}/*** 打开百度地图导航(https://lbsyun.baidu.com/index.php?title=uri/api/android#service-page-anchor9)** @param context   context* @param address   终点名称* @param latitude  终点纬度* @param longitude 终点经度*/public static void openBaiduNavigation(Context context, String address, double latitude, double longitude) {if (isBaiduMapInstall(context)) {String dLatlng = latitude + "," + longitude; // 目的地坐标(注意:坐标先纬度,后经度)Uri uri = Uri.parse("baidumap://map/direction?origin=我的位置"+ "&destination=name:" + address+ "|latlng:" + dLatlng+ "&coord_type=gcj02&mode=driving&src=andr.baidu.openAPIdemo");Intent intent = new Intent(Intent.ACTION_VIEW, uri);context.startActivity(intent);} else {Toast.makeText(context, "未安装百度地图", Toast.LENGTH_LONG).show();}}/*** 打开腾讯地图导航(https://lbs.qq.com/webApi/uriV1/uriGuide/uriMobileRoute)** @param context   context* @param address   终点名称* @param latitude  终点纬度* @param longitude 终点经度*/public static void openTencentNavigation(Context context, String address, double latitude, double longitude) {if (isTencentMapInstall(context)) {String dLatlng = latitude + "," + longitude;Uri uri = Uri.parse("qqmap://map/routeplan?type=drive&from=我的位置&fromcoord=CurrentLocation"+ "&to=" + address+ "&tocoord=" + dLatlng+ "&referer=key"); // key:填写你自己的腾讯地图开发者keyIntent intent = new Intent(Intent.ACTION_VIEW, uri);context.startActivity(intent);} else {Toast.makeText(context, "未安装腾讯地图", Toast.LENGTH_LONG).show();}}
}

注:腾讯地图需要申请一个开发者key

添加权限

<uses-permissionandroid:name="android.permission.QUERY_ALL_PACKAGES"tools:ignore="QueryAllPackagesPermission" />

由于权限限制,在安卓12上若不加这个权限会请求不到

调用第三方地图app导航(高德、百度、腾讯)相关推荐

  1. IOS 调用第三方地图APP导航

    在开发中调用第三方APP进行路径规划,在此过程中不需要导入所调用地图的SDK,本文中只介绍调用百度地图.高德地图以及苹果自身地图APP. 在本项目中我用的是百度地图编码获取的百度经纬度坐标,而在开发过 ...

  2. iOS之Swift实现调用第三方地图应用导航

    iOS之Swift实现调用第三方地图应用导航 开始的一些话 关于坐标系 源码 调用方法 一点注意事项 开始的一些话 作为一个"半路出家"的iOS的程序猿,一直使用OC开发,也想过使 ...

  3. Android仿高德地图app,Android仿微信调用第三方地图应用导航(高德、百度、腾讯)...

    好久没有写Andorid代码啦!最近刚好要实现一个这个功能,顺便就在博客里分享一下. 实现目标 先来一张微信功能截图看看要做什么 其实就是有一个目的地,点击目的地的时候弹出可选择的应用进行导航. 大脑 ...

  4. Android仿微信调用第三方地图应用导航(高德、百度、腾讯)

    好久没有写Andorid代码啦!最近刚好要实现一个这个功能,顺便就在博客里分享一下. 实现目标 先来一张微信功能截图看看要做什么 其实就是有一个目的地,点击目的地的时候弹出可选择的应用进行导航. 大脑 ...

  5. 微信公众号,JS-SDK获取位置信息,并调起第三方地图App导航

    微信公众号关联网页获取位置信息,可以参照<微信公众平台技术文档>-> 微信JS-SDK说明文档,官方链接地址:https://mp.weixin.qq.com/wiki?t=reso ...

  6. Android 调用第三方地图进行导航

    前言 最近项目中需要实现定位导航到某个目的地去.看网上说有人集成了某些平台的sdk进行导航操作.其实可以不用集成sdk文档(只是针对要导航到xx地方去的业务需求,只需要知道当前位置和目的地的坐标即可. ...

  7. Android app唤醒第三方地图App进行导航(高德,百度,腾讯)

    根据项目需要 要添加导航功能 由于我的app 的内部已经做了地图和路线规划 同时为了使用用户的使用习惯 我选择了第三方导航 选择用户已有地图软件进行路线规划和导航 我选择的是目前的主流地图app平台 ...

  8. Android 打开第三方地图App进行导航

    Ⅰ.前言 接到产品新需求,模仿高德地图APP通过搜索关键词,在地图标识附近区域内 "关键词"所搜到的点,地图和列表之间有抽屉似的效果,具体的看下面效果图.而打开第三方地图APP进行 ...

  9. android app调用第三方地图路线规划导航(百度,高德,腾讯)

    android app调用第三方地图路线规划导航(百度,高德,腾讯) 因为直接使用高德的sdk提供的导航被投诉说不准,所以需要接第三方. 把BAT系的地图都接上了,有兄弟找到其他的地图调用方法告诉下小 ...

最新文章

  1. 算法导论之红黑树的学习
  2. mysql暂停触发器_mysql如何临时禁用触发器
  3. GNS3 搭配 secureCRT 安装配置与使用心得
  4. Codeforces Round #277(Div 2) A、B、C、D、E题解
  5. 当Typora开始收费,开源免费的MarkText编辑器火了:一周新增2k+star
  6. sql建立到mysql的会话_SQLalchemy会话和多个数据库尝试创建twi索引
  7. 智慧楼宇管理后台、运维配置、设备台账、设备管理、维保统计、巡检统计、维修工单、报修统计、电子巡更、智能楼宇运营、运营后台、智慧社区、楼宇设备监控管理端、智能社区管理系统、楼宇运维管理系统
  8. 计蒜客网站 ACM-ICPC亚洲区赛题
  9. Decorator模式设计模式
  10. 通过分析如何一个人的性格笔迹?
  11. jQuery淡入淡出
  12. 信号与系统奥本海姆第二版课后习题答案与详解(免下载,附有知识总结)
  13. 欧拉-拉格朗日方程(The Euler-Lagrange equation)
  14. CDN的加速域名、源站地址与回源host之间的关系
  15. 计算机使用的dns错误,dns错误,教您dns错误怎么修复
  16. 一年回顾_2016年:一年回顾
  17. 【2015NOIP模拟】【Ocd】【Mancity】【Captcha】10.31总结
  18. 计算机英语期末考试方案,【计算机英语论文】计算机实训考核方法改革方案(共4649字)...
  19. win10键盘全部没反应_win10笔记本键盘全部没反应 win10键盘全部没反应解决方法...
  20. 判了!微信外挂软件“海贼王”主犯获刑10年

热门文章

  1. 如何实现一个下载进度条/播放进度条
  2. java图片路径根目录_java 相对路径 绝对路径 classes bin 根目录
  3. fuse文件系统调试环境
  4. HTTP 204和304的区别
  5. Springboot项目install打包-某些输入文件使用了未经检查或不安全的操作。分析与解决
  6. 基于javaweb+jsp的网上商城系统(java+jsp+servlet+mysql+ajax)
  7. 支付宝当面付实现跳转到指定网页唤起支付
  8. 【财经期刊FM-Radio|2020年11月19日】
  9. Matlab 实现 数值计算方法 二分法
  10. 2018年研究生数学建模竞赛B题(数模竞赛第二题思路)