请选择 进入手机版 | 继续访问电脑版
帖子
帖子
用户
博客
课程
显示全部楼层
15
帖子
0
勋章
109
Y币

[问题求助] 安卓唤起高德地图传入经纬度不生效

[复制链接]
发表于 2023-2-1 16:27:17
目前写法是唤起高德同时传入经纬度 想实现打开高德后展示搜索该经纬度附近的酒店。但是每次显示的都是我所在位置附近的酒店。代码如下

api.openApp({
          androidPkg: 'com.autonavi.minimap',
          uri : "androidamap://poi?sourceApplication=胜利健康&keywords=酒店&lat="
+ lat + "&lon=" + lon + "&dev=1&style=1"
         
        }, function (ret, err) {
        
        });



127
帖子
7
勋章
2万+
Y币
  1. function showMapSheet(lat,lng,name){

  2.     api.actionSheet({
  3.         title: '打开地图',
  4.         cancelTitle: '取消',
  5.         destructiveTitle: '',
  6.         buttons: ['腾讯地图', '高德地图', '百度地图']
  7.     }, function(ret, err) {
  8.         var index = ret.buttonIndex;

  9.         switch (index) {
  10.             case 1://腾讯地图
  11.             openQQMapApp(lat,lng,name);
  12.                 break;
  13.             case 2://高德地图
  14.                 openAMapApp(lat,lng,name);
  15.                 break;
  16.             case 3://百度地图
  17.                 openBMapApp(lat,lng,name);
  18.                 break;
  19.             default://腾讯地图

  20.                 break;
  21.         }
  22.     });
  23. }

  24. function isInstalled(appBundle,appName,callback){
  25.     if (!arguments[1]) appName = "";
  26.     api.appInstalled({
  27.         appBundle: appBundle,
  28.     }, function(ret, err) {
  29.         if (ret.installed) {
  30.             callback(true);
  31.         } else {
  32.             //应用未安装
  33.             showMessage("请先下载并安装"+appName+"APP~_~!");
  34.         }
  35.     });
  36. }
  37. function openQQMapApp(lat,lng,name,navType){
  38.     // qqmap://map/routeplan?type=drive&from=清华&fromcoord=39.994745,116.247282&to=怡和世家&tocoord=39.867192,116.493187&referer=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77
  39.     if (!arguments[2]) name = "";
  40.     if (!arguments[3]) navType = "drive"; //公交:bus驾车:drive步行:walk骑行:bike
  41.     var appBundle = (api.systemType == "ios") ? "qqmap" : "com.tencent.map";
  42.     isInstalled(appBundle,"腾讯地图",function(ret){
  43.         if(ret){
  44.             var uri = "qqmap://map/routeplan?type=" + navType + "&to=" + name + "&tocoord=" + lat + "," + lng + "&referer=";
  45.             api.openApp({
  46.                 androidPkg: 'android.intent.action.VIEW',
  47.                 // mimeType: 'text/html',
  48.                 uri: uri
  49.             }, function(ret, err) {

  50.             });
  51.         }
  52.     })
  53. }

  54. function openAMapApp(lat,lng,name,navType){
  55.     // amapuri://route/plan/?sid=&slat=39.92848272&slon=116.39560823&sname=A&did=&dlat=39.98848272&dlon=116.47560823&dname=B&dev=0&t=0
  56.     if (!arguments[2]) name = "";
  57.     if (!arguments[3]) navType = 0; //t = 0(驾车)= 1(公交)= 2(步行)= 3(骑行)= 4(火车)= 5(长途客车)
  58.     var appBundle = (api.systemType == "ios") ? "amapuri" : "com.autonavi.minimap";
  59.     isInstalled(appBundle,"高德地图",function(ret){
  60.         if(ret){
  61.             var uri = "amapuri://route/plan/?dlat="+lat+"&dlon="+lng+"&dname="+name+"&dev=0&t="+ navType;
  62.             api.openApp({
  63.                 androidPkg: 'android.intent.action.VIEW',
  64.                 // mimeType: 'text/html',
  65.                 uri: uri
  66.             }, function(ret, err) {

  67.             });
  68.         }
  69.     })
  70. }

  71. function openBMapApp(lat,lng,name,navType){
  72.     // baidumap://map/navi?location=40.057023,116.307852&coord_type=bd09ll&type=BLK&src=ios.baidu.openAPIdemo
  73.     if (!arguments[2]) name = "";
  74.     if (!arguments[3]) navType = ""; // navi=驾车  ridenavi=骑行 walknavi=步行
  75.     var appBundle = (api.systemType == "ios") ? "baidumap" : "com.baidu.BaiduMap";
  76.     isInstalled(appBundle,"百度地图",function(ret){
  77.         if(ret){
  78.             var uri = "baidumap://map/navi?location="+lat+","+lng+"&coord_type=bd09ll";
  79.             api.openApp({
  80.                 androidPkg: 'android.intent.action.VIEW',
  81.                 // mimeType: 'text/html',
  82.                 uri: uri
  83.             }, function(ret, err) {

  84.             });
  85.         }
  86.     })
  87. }
复制代码
15
帖子
0
勋章
109
Y币

var uri = 'baidumap://map/place/search?location=39.10637,117.15862&query=酒店&radius=1000&coord_type=bd09ll&src=com.vichms.health.suffer'
        api.openApp({
          androidPkg: 'com.baidu.BaiduMap',
          iosUrl: uri,
          uri: uri
        }, function (ret, err) {
        });

您好 我这段代码在ios端运行没问题 可以正常展示附近酒店,到安卓端唤起百度地图后就没反应了
按照楼上的示例代码试下
您需要登录后才可以回帖 登录

本版积分规则