Android app唤醒第三方地图App进行导航

149 阅读1分钟

根据项目需要 要添加导航功能 拉起手机导航软件从我的位置跳转指定位置并直接导航;我默认选择的是驾车路线

拉取导航代码参数

    private String longitude; // 经度
    private String latitude;  // 纬度
    private String tName;  // 目的地

百度地图


    // 拉起导航 未加目的地 根据经纬度自己显示
    Intent intent= new Intent("android.intent.action.VIEW", android.net.Uri.parse("baidumap://map/geocoder?location=" + latitude + "," + longitude));

     // 拉起导航 加入目的地
    Intent intent= new Intent("android.intent.action.VIEW",  android.net.Uri.parse("baidumap://map/direction?destination=latlng:" +
         latitude + ","
        + longitude + "|name:" + tName  // 终点
    ));

    // 上面俩种方法都可以  根据自己需求选择
    cordova.getActivity().startActivity(intent);

腾讯地图

  Intent intent = new Intent("android.intent.action.VIEW", android.net.Uri.parse("qqmap://map/routeplan?type=drive&from=&fromcoord=&to=" + tName + "&tocoord=" + latitude + "," + longitude + "&policy=0&referer=appName"));
  cordova.getActivity().startActivity(intent);

高德地图

  Intent intent= new Intent("android.intent.action.VIEW", android.net.Uri.parse("androidamap://route?sourceApplication=appName&slat=&slon=&dlat="+ latitude +"&dlon="+ longitude+"&dname=" + tName + "&dev=0&t=2"));
  cordova.getActivity().startActivity(intent);

手机安装导航软件

检查手机是否安装了目标地图app