在运用中启用百度搜索地形图和高德地形图的方

摘要: 百度搜索方法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...

百度搜索方法

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=.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 .baidu.BaiduMap .autonavi.minimap

private boolean isInstallPackage(String packageName) {

return new File( /data/data/ + packageName).exists();

}

<.autonavi.minimap

<.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.979324 * 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.979324 * 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;

}




2016 嘿!编码 copy right  
嘿!编码-测算机程序编写新手入门网站,关心手机软件开发设计全新技术性,收集企业网站建设受欢迎資源。
手机软件开发设计全集,企业网站建设手册,程序猿必上的程序编写新手入门网站。 


联系我们

全国服务热线:4000-399-000 公司邮箱:343111187@qq.com

  工作日 9:00-18:00

关注我们

官网公众号

官网公众号

Copyright?2020 广州凡科互联网科技股份有限公司 版权所有 粤ICP备10235580号 客服热线 18720358503

技术支持:自助建站