微信公众号h5项目安卓手机定位失败原因之一

文章讲述了在微信公众号H5项目中,使用微信JSSDK获取经纬度时遇到的问题,苹果手机定位正常返回数字,而安卓手机返回字符串。解决方法是去掉toFixed(),因为安卓返回值类型不适用该函数。
摘要由CSDN通过智能技术生成

问题描述:微信公众号h5项目,使用微信jssdk获取经纬度,使用腾讯地图解析,苹果手机定位功能正常,安卓手机定位失败

使用微信jsdk方法调取经纬度信息  配置为type:gcj02 

wx.getLocation({

  type: 'wgs84', // 默认为wgs84gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'

  success: function (res) {

    var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90

    var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180

    var speed = res.speed; // 速度,以米/每秒计

    var accuracy = res.accuracy; // 位置精度

  }

});

//获取定位经纬度
            if (this.$wechat && this.$wechat.isWechat()) {
                console.log('phoneList获取地理信息');
                this.$wechat.location((res) => {
                    //苹果手机返回经纬度为数字,安卓手机为字符串
                    console.log('微信返回地理信息', res)
                    // let latitude = (res.latitude).toFixed(6); // 纬度,浮点数,范围为90 
                    // let longitude = (res.longitude).toFixed(6); // 经度,浮点数,范围为

                    let latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
                    let longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。

                    console.log('处理经纬度-----',typeof(latitude));
                    this.httpgz({//封装的请求方法
                        url : '后端调腾讯地图处理经纬度接口',
                        method:'get',
                        data:{latitude,longitude},
                        success: res => {
                            if (res.code == 200){
                                console.log('获取地址',res);
                                
                            }
                        }
                    })
                    
    
                    
                })
            };

反复测试排查,得出推断的结论,苹果手机调wx.getLocation 返回经纬度信息为number类型,安卓手机返回经纬度为string类型,导致我使用的toFixed()方法报错

删除toFixed()方法,解决问题

  • 14
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值