高德 com.autonavi.minimap

百度 com.baidu.BaiduMap

百度 如果已安装跳转安装的程序 如果没有安装跳转网页版百度地图

private void openBaiduMap(double lon, double lat, String describle) {try {StringBuilder loc = new StringBuilder();loc.append("intent://map/direction?origin=latlng:");loc.append(latitude);loc.append(",");loc.append(longitude);loc.append("|name:");loc.append("我的位置");loc.append("&destination=latlng:");loc.append(lat);loc.append(",");loc.append(lon);loc.append("|name:");loc.append(describle);loc.append("&mode=driving");loc.append("&referer=Autohome|GasStation#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end");Intent intent = Intent.getIntent(loc.toString());if (isInstallPackage("com.baidu.BaiduMap")) {startActivity(intent); //启动调用Log.e("GasStation", "百度地图客户端已经安装");} else {LatLng ptMine = new LatLng(latitude, longitude);LatLng ptPosition = new LatLng(lat, lon);NaviParaOption para = new NaviParaOption().startPoint(ptMine).endPoint(ptPosition);BaiduMapNavigation.openWebBaiduMapNavi(para, getApplicationContext());}} catch (Exception e) {e.printStackTrace();}}

高德地图

 private void openGaoDeMap(double lon, double lat, String title, String describle) {try {double[] gd_lat_lon = bdToGaoDe(lon, lat);StringBuilder loc = new StringBuilder();loc.append("androidamap://viewMap?sourceApplication=XX");loc.append("&poiname=");loc.append(describle);loc.append("&lat=");loc.append(gd_lat_lon[0]);loc.append("&lon=");loc.append(gd_lat_lon[1]);loc.append("&dev=0");Intent intent = Intent.getIntent(loc.toString());startActivity(intent);} catch (Exception e) {e.printStackTrace();}}

判断手机是否有app

 private boolean isInstallPackage(String packageName) {return new File("/data/data/" + packageName).exists();}

GCJ-02 == BD-09 地图坐标系互转

    private double[] bdToGaoDe(double bd_lat, double bd_lon) {double[] gd_lat_lon = new double[2];double PI = 3.14159265358979324 * 3000.0 / 180.0;double x = bd_lon - 0.0065, y = bd_lat - 0.006;double z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * PI);double theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * PI);gd_lat_lon[0] = z * Math.cos(theta);gd_lat_lon[1] = z * Math.sin(theta);return gd_lat_lon;}private double[] gaoDeToBaidu(double gd_lon, double gd_lat) {double[] bd_lat_lon = new double[2];double PI = 3.14159265358979324 * 3000.0 / 180.0;double x = gd_lon, y = gd_lat;double z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * PI);double theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * PI);bd_lat_lon[0] = z * Math.cos(theta) + 0.0065;bd_lat_lon[1] = z * Math.sin(theta) + 0.006;return bd_lat_lon;}

调用

    @OnClick({R.id.iv_go})public void onViewClicked(View view) {switch (view.getId()) {case R.id.iv_go:openBaiduMap(Double.parseDouble(lng), Double.parseDouble(lat), address);break;}}

android调用外部导航(百度,高德)相关推荐

  1. Android调用跳转百度地图、高德地图、腾讯地图进行目的地导航

    Android App跳转百度地图.高德地图.腾讯地图进行目的地导航. 先放上百度.高德.腾讯地图调起API文档地址,有些参数不懂可以参考. 百度地图:http://lbsyun.baidu.com/ ...

  2. Android 调用地图导航

    启动高德地图 /*** 启动高德App进行导航** @param sourceApplication 必填 第三方调用应用名称.如 amap* @param dname 非必填 目的地名称* @par ...

  3. android启动百度地图应用并开始导航,android打开外部地图导航(百度、高德、腾讯)...

    外部打开百度地图进行导航: /*** 打开百度地图*@paramslat开始地点 维度*@paramslon开始地点 经度*@paramsname开始地点 名字*@paramdlat终点地点 维度*@ ...

  4. 高德地图 web android,Android 调用第三方地图类App (高德 百度 百度网页版)

    Screenshot_20170509-152819.png 前言 最近项目中需要用到地图的功能,但是应用本身不是地图类应用,而且用地图只是为了分享和展示一个地点而已,所以完全没有必要去集成厚重的sd ...

  5. Android 调用百度地图sdk 实现路线规划导航

    Android 调用百度地图sdk 实现路线规划导航 功能: 实现实时/需求定位 卫星地图查看 路况 周边poi检索 地点输入提示检索 驾驶 步行 公交 骑行路线规划 注:以上为实现的大概功能 ,接下 ...

  6. Flutter 调用地图软件(高德、百度、腾讯、苹果)同时实现另类国际化

    文章目录 Flutter 调用地图软件(高德.百度.腾讯.苹果) 一.说明 第 1 类:App 集成导航功能 第 2 类:跳转第三方地图软件 二.实现步骤 使用 1.添加插件: 2.iOS 配置 in ...

  7. 【Android】APP嵌入百度地图骑行导航一直初始化引擎失败解决办法

    [Android] APP嵌入百度地图骑行导航一直初始化引擎失败解决办法 最近手头上有个需求需要做骑行导航 首先百度地图开放平台http://lbsyun.baidu.com/ 按提示找到Androi ...

  8. android 调用百度地图规划,Android 调用百度地图API

    一.到 百度地图开发平台下载SDK 1.点击自定义下载 2.下载自己想要的功能包我这里选了三个 3.获取密钥 获取密钥之前我们要新建一个应用 填写好相关的信息 二. 新建一个项目工程 1. 把下载好的 ...

  9. Android调用高德地图车机版

    高德地图车机版跟百度地图调用方式不同,高德是发广播,导致没有办法时间调起,只能是app处于后台运行时才能调(这个官方API也描述了),不然就使用代码强制打开app再回去导航(感觉好麻烦啊,没找到解决办 ...

最新文章

  1. 解决Office互操作错误检索COML类工厂中 CLSID为 {xxx}的组件时失败,原因是出现以下错误: 80070005...
  2. php定义常量和静态常量的区别,php静态变量与自定义常量的区别实例详解
  3. 【数据平台】pandas将一列中的文本拆分成多行
  4. C++Breadth First Search 广度优先搜索(附完整源码)
  5. hashmap remove 没释放内存_java从零开始手写 redis(13)HashMap 源码原理详解
  6. Guava翻译系列之EventBus
  7. (软件工程复习核心重点)第一章软件工程概论-第三节:软件生命周期
  8. Office 365新管理中心目录同步配置
  9. js迭代器实现斐波那契数列
  10. “表达式必须包含 bool 类型(或可转换为 bool)”
  11. 巴基斯坦削减光伏发电上网电价或影响清洁能源发展前景
  12. camera link
  13. Qt进行CSV文件操作
  14. 北京市参加汽车摇号条件
  15. php微信公众号报修系统,微信公众号报修系统使用流程
  16. 阿里云DMS添加ECS自建数据库
  17. iPhone XS 陷“充电门”:待机状态拒绝充电
  18. 图像处理中“灰度级数”是什么?(灰度值)(位深度)(1bit=1位)
  19. java并发free-coder
  20. Unity程序框架总结归置系列(1)——单例基类

热门文章

  1. 免费天气查询工具类源码,开箱即用,根据中国气象局API编写。高效稳定
  2. 全国青少年编程等级考试scratch四级真题2021年9月(含题库答题软件账号)
  3. 2022.03全国青少年软件编程(图形化)等级考试试卷(四级)
  4. 记录小米设备事件获取
  5. 危机管理应遵循哪些原则?
  6. android studio引用高德地图api后地图显示白屏
  7. EXCEL之隐形对象的清理办法
  8. 也许你在到处找PS,不妨来这里看看
  9. 百万调音师—Audition多轨编辑
  10. Unity 回合制战斗系统(初级篇)