调用百度和高德地图导航,好用

转载 2016年12月17日 11:39:10

导航

百度方式

private void openBaiduMap(double lon, double lat, String title, String describle) {
try {
StringBuilder loc = new StringBuilder();
loc.append(“intent://map/direction?origin=latlng:”);
loc.append(lat);
loc.append(“,”);
loc.append(lon);
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 {
Log.e(“GasStation”, “没有安装百度地图客户端”);
}
} catch (Exception e) {
e.printStackTrace();
}
}

高德方式

高德-uri-api

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();
}

高德 com.autonavi.minimap

百度 com.baidu.BaiduMap

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;
}

ios调用百度、高德地图 导航功能

ios调用百度、高德地图 导航功能要调用第三方app,先要在info.plist中 LSApplicationQueriesSchemes 中增加 app 百度地图:baidumap 高德地图:i...
  • q339659207
  • q339659207
  • 2016年03月30日 11:33
  • 1585

百度导航, 高德导航 第三方 调用接口

String dat = "geo:28.205583,112.871287?q=28.205583,112.871287(北京汉丽轩烤肉超市(涉外店)) "; // // Intent in...
  • mirkerson
  • mirkerson
  • 2015年11月13日 18:07
  • 3884

Android app调用第三方地图(百度地图,高德地图,谷歌地图)导航

Android app调用第三方地图(百度地图,高德地图,谷歌地图)导航
  • zhaozhuzi
  • zhaozhuzi
  • 2017年04月17日 15:56
  • 4154

自己整理的 调用百度,高德API的定位和导航。

/** * 调用百度定位 * @param context * @param dizhix 维度 * @param dizhiy 经度 * @param title 详细地址 */ pu...
  • yuexiaduzhe
  • yuexiaduzhe
  • 2017年08月20日 22:13
  • 222

app调用另外一个app启动需要info.plist中设置如下,例如app调用高德地图,百度地图进行导航(详细教程)

首先  info.plist中需要添加 app scheme (调用地图,你还得设置地图支持)   配置方法如下...
  • YUCHENmao
  • YUCHENmao
  • 2016年10月13日 16:35
  • 582

android开发游记:APP内部调启百度、高德、web地图导航

一些地图相关的app一般都需要集成导航的功能方便用户使用,但实际上我们很多时候仅仅只是希望提供这样一个贴心的功能把用户送到目的地,而并不会在导航过程中进行自己的业务的处理,这样把导航的功能完全独立出来...
  • liaoinstan
  • liaoinstan
  • 2016年03月12日 11:05
  • 13799

android打开外部地图导航(百度、高德、腾讯)

外部打开百度地图进行导航: 1、百度地图官方文档URL·API 说明 /** * 打开百度地图 * @param slat 开始地点 维度 * @param slon 开始地点 经度 * @...
  • hyyz3293
  • hyyz3293
  • 2017年08月07日 14:10
  • 770

iOS 跳转到地图后导航(高德地图,百度地图,腾讯地图,苹果手机原生的地图)

1.现在info.plist里面如下图所示添加
  • chenyongkai1
  • chenyongkai1
  • 2016年07月13日 22:04
  • 6137

安卓通过经纬度,实现intent调用百度,高德,Google地图客户端实现驾车导航功能

大家在开发中实现多套地图实现导航功能,导入sdk会增大APK体积,且繁琐,但是在代码可以通过Intent就可以直接调用百度地图客户端、高德地图客户端、Google 地图客户端实现导航功能!话不多说直接...
  • mxy111111
  • mxy111111
  • 2016年11月18日 12:00
  • 3613

安卓调起高德百度第三方地图进行导航

项目中用到了导航功能,本着简单的做法,就想到了直接调用高德百度第三方地图进行导航,这样可以减少包的体积,在网上百度了许久,各种都有,自己总结了一下,目前测试还算好用,拿出来晒一下,知道的就别喷了,我是...
  • yu19931202
  • yu19931202
  • 2017年05月05日 22:41
  • 290
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:调用百度和高德地图导航,好用
举报原因:
原因补充:

(最多只允许输入30个字)