ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

在uni-app中调用高德地图去导航

2022-08-19 15:34:17  阅读:216  来源: 互联网

标签:hidden app self lat window partnerAddress uni lng 高德


1.判断一下是不是在微信环境
2.微信环境调用微信自带的地图导航
3.h5环境跳转去高德地图

    guide() {
      let self = this;
      console.log("self.lat", self.lat, self.lng, self.partnerAddress);
      var ua = window.navigator.userAgent.toLowerCase();
      console.log("ua", ua.match(/micromessenger/i) == "micromessenger");
      if (ua.match(/micromessenger/i) == "micromessenger") {
        if (self.partnerAddress && self.partnerAddress != "") {
          // 打开内置地图
          jWeixin.openLocation({
            latitude: Number(self.lat), // 纬度,浮点数,范围为90 ~ -90
            longitude: Number(self.lng), // 经度,浮点数,范围为180 ~ -180。
            name: self.partnerAddress, // 位置名
            address: self.partnerAddress, // 地址详情说明
            scale: 24, // 地图缩放级别,整型值,范围从1~28。默认为最大
            infoUrl: "", // 在查看位置界面底部显示的超链接,可点击跳转
            fail: (error) => {
              console.log("error---", error);
            },
          });
        } else {
         console.log('暂不知道该位置',暂不知道该位置)
        }
      } else {
        if (self.partnerAddress && self.partnerAddress != "") {
          //景点位置partnerAddress 景点经纬度lng lat
          var lng = self.lng;
          var lat = self.lat;
          // 高德地图
          if (self.customBrowserVersion().android) {
            window.location.href =
              "androidamap://viewMap?sourceApplication=appname&poiname=" +
              self.partnerAddress +
              "&lat=" +
              lat +
              "&lon=" +
              lng +
              "&dev=0";
            //判断是否跳转
            setTimeout(function () {
              let hidden =
                window.document.hidden ||
                window.document.mozHidden ||
                window.document.msHidden ||
                window.document.webkitHidden;
              if (typeof hidden == "undefined" || hidden == false) {
                //调用高德地图
                window.location.href =
                  "https://uri.amap.com/marker?position=" +
                  lng +
                  "," +
                  lat +
                  "&name=" +
                  self.partnerAddress;
              }
            }, 2000);
          } else if (self.customBrowserVersion().ios) {
            window.location.href =
              "iosamap://viewMap?sourceApplication=appname&poiname=" +
              self.partnerAddress +
              "&lat=" +
              lat +
              "&lon=" +
              lng +
              "&dev=0";
            //判断是否跳转
            setTimeout(function () {
              let hidden =
                window.document.hidden ||
                window.document.mozHidden ||
                window.document.msHidden ||
                window.document.webkitHidden;
              if (typeof hidden == "undefined" || hidden == false) {
                //调用高德地图
                window.location.href =
                  "https://uri.amap.com/marker?position=" +
                  lng +
                  "," +
                  lat +
                  "&name=" +
                  self.partnerAddress;
              }
            }, 2000);
          }
        } else {
           console.log('暂不知道该位置',暂不知道该位置)
        }
      }
    },

标签:hidden,app,self,lat,window,partnerAddress,uni,lng,高德
来源: https://www.cnblogs.com/zm-0101/p/16602096.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有