迷踪
迷踪
  • 发布:2024-07-23 11:35
  • 更新:2024-07-23 16:18
  • 阅读:380

【报Bug】chooseLocation 更新到4.24还是不能用, 在真机调试时可以用 , 在打包的正式版本 选地址时一直转圈圈

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10 专业版

HBuilderX类型: 正式

HBuilderX版本号: 4.24

手机系统: Android

手机系统版本号: Android 14

手机厂商: 小米

手机机型: redmi turbo

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

App下载地址或H5⽹址: http://jishansu.cn/APK/__UNI__3000FA1__20240708102428.apk

示例代码:

let then = this
uni.chooseLocation({
success: res => {

                    then.longitude = res.longitude;  
                    then.latitude = res.latitude;  
                    then.formData.Longitude = res.longitude;  
                    then.formData.Latitude = res.latitude;  
                    //为标记点经纬度重新赋值【在data中赋坐标的方式无效】  
                    // then.covers[0].longitude = res.longitude;  
                    // then.covers[0].latitude = res.latitude;  
                    then.formData.Position = res.name  

                    let location = then.latitude + ',' + then.longitude  
                    let params={  
                    'location':location  
                    }  
                    api.getLocations(params).then(res => {  
                        //if (res.Success == true) {  
                            var resObj=JSON.parse(res.Data)  
                            if (res.message ='Success') {  
                                let province = resObj.result.address_component.province //省  
                                let city = resObj.result.address_component.city //市  
                                let district = resObj.result.address_component.district //区  
                                console.log(province)  
                                console.log(city)  
                                console.log(district)  
                                // then.formData.Position = res.data.result.address  
                                then.formData.Province = province  
                                then.formData.city = city  
                                then.region = province + city //所在地区  
                            } else {  
                                    console.log(res.errMsg, '解析失败返回的错误信息');  
                            }  
                        //}  
                    })  
                },  
                fail: err => {  
                    uni.showToast({  
                        icon: 'none',  
                        title: '获取位置失败'  
                    });  
                }  
            });

操作步骤:

let then = this
uni.chooseLocation({
success: res => {

                    then.longitude = res.longitude;  
                    then.latitude = res.latitude;  
                    then.formData.Longitude = res.longitude;  
                    then.formData.Latitude = res.latitude;  
                    //为标记点经纬度重新赋值【在data中赋坐标的方式无效】  
                    // then.covers[0].longitude = res.longitude;  
                    // then.covers[0].latitude = res.latitude;  
                    then.formData.Position = res.name  

                    let location = then.latitude + ',' + then.longitude  
                    let params={  
                    'location':location  
                    }  
                    api.getLocations(params).then(res => {  
                        //if (res.Success == true) {  
                            var resObj=JSON.parse(res.Data)  
                            if (res.message ='Success') {  
                                let province = resObj.result.address_component.province //省  
                                let city = resObj.result.address_component.city //市  
                                let district = resObj.result.address_component.district //区  
                                console.log(province)  
                                console.log(city)  
                                console.log(district)  
                                // then.formData.Position = res.data.result.address  
                                then.formData.Province = province  
                                then.formData.city = city  
                                then.region = province + city //所在地区  
                            } else {  
                                    console.log(res.errMsg, '解析失败返回的错误信息');  
                            }  
                        //}  
                    })  
                },  
                fail: err => {  
                    uni.showToast({  
                        icon: 'none',  
                        title: '获取位置失败'  
                    });  
                }  
            });

预期结果:

let then = this
uni.chooseLocation({
success: res => {

                    then.longitude = res.longitude;  
                    then.latitude = res.latitude;  
                    then.formData.Longitude = res.longitude;  
                    then.formData.Latitude = res.latitude;  
                    //为标记点经纬度重新赋值【在data中赋坐标的方式无效】  
                    // then.covers[0].longitude = res.longitude;  
                    // then.covers[0].latitude = res.latitude;  
                    then.formData.Position = res.name  

                    let location = then.latitude + ',' + then.longitude  
                    let params={  
                    'location':location  
                    }  
                    api.getLocations(params).then(res => {  
                        //if (res.Success == true) {  
                            var resObj=JSON.parse(res.Data)  
                            if (res.message ='Success') {  
                                let province = resObj.result.address_component.province //省  
                                let city = resObj.result.address_component.city //市  
                                let district = resObj.result.address_component.district //区  
                                console.log(province)  
                                console.log(city)  
                                console.log(district)  
                                // then.formData.Position = res.data.result.address  
                                then.formData.Province = province  
                                then.formData.city = city  
                                then.region = province + city //所在地区  
                            } else {  
                                    console.log(res.errMsg, '解析失败返回的错误信息');  
                            }  
                        //}  
                    })  
                },  
                fail: err => {  
                    uni.showToast({  
                        icon: 'none',  
                        title: '获取位置失败'  
                    });  
                }  
            });

实际结果:

let then = this
uni.chooseLocation({
success: res => {

                    then.longitude = res.longitude;  
                    then.latitude = res.latitude;  
                    then.formData.Longitude = res.longitude;  
                    then.formData.Latitude = res.latitude;  
                    //为标记点经纬度重新赋值【在data中赋坐标的方式无效】  
                    // then.covers[0].longitude = res.longitude;  
                    // then.covers[0].latitude = res.latitude;  
                    then.formData.Position = res.name  

                    let location = then.latitude + ',' + then.longitude  
                    let params={  
                    'location':location  
                    }  
                    api.getLocations(params).then(res => {  
                        //if (res.Success == true) {  
                            var resObj=JSON.parse(res.Data)  
                            if (res.message ='Success') {  
                                let province = resObj.result.address_component.province //省  
                                let city = resObj.result.address_component.city //市  
                                let district = resObj.result.address_component.district //区  
                                console.log(province)  
                                console.log(city)  
                                console.log(district)  
                                // then.formData.Position = res.data.result.address  
                                then.formData.Province = province  
                                then.formData.city = city  
                                then.region = province + city //所在地区  
                            } else {  
                                    console.log(res.errMsg, '解析失败返回的错误信息');  
                            }  
                        //}  
                    })  
                },  
                fail: err => {  
                    uni.showToast({  
                        icon: 'none',  
                        title: '获取位置失败'  
                    });  
                }  
            });

bug描述:

2024-07-23 11:35 负责人:无 分享
已邀请:

最佳回复

9***@qq.com

9***@qq.com - 盾安云开发er

看官方文档需要更新到 4.26 但是我不知道怎么更新 咋更新的?

迷踪

迷踪 (作者) - 恒大拍卖

官方最新版本就是4.24

  • 9***@qq.com

    https://uniapp.dcloud.net.cn/api/location/location.html

    2024-07-23 11:49

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

请确认一个问题,在搜索框中输入关键字,看看是否能显示列表

  • 苏慕彦

    不行

    2024-07-23 13:18

  • 迷踪 (作者)

    输入关键字也是不行的

    2024-07-23 14:14

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

私信我apk测试账号和选择位置操作入口

  • 迷踪 (作者)

    我进不去大佬你的主页 您加下我v把 1055799430

    2024-07-23 14:17

  • DCloud_uni-ad_HDX

    回复 迷踪: 加QQ: 3212223575

    2024-07-23 14:31

苏慕彦

苏慕彦 - 2222

我也不行,然后过一会会定位到当前位置

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

经排查确认地图key相关功能的使用量用完

  • 1***@qq.com

    请问在哪里可以看地图key的使用量?这个key是指我们自己填的从地图厂商那创建的key吗

    2024-07-23 17:14

  • 2***@qq.com

    那为什么我新创建的key也是在真机调试时可以用 , 在打包的正式版本 选地址时一直转圈圈

    2024-07-23 17:21

  • DCloud_uni-ad_HDX

    回复 2***@qq.com: 调试时如果没有使用自定义基座 和你创建的key没有关系,HBuilderX基座自带了测试key,检查key和包名配置是否正确

    2024-07-23 18:00

  • DCloud_uni-ad_HDX

    回复 1***@qq.com: 是的

    2024-07-23 18:01

  • 1***@qq.com

    回复 DCloud_uni-ad_HDX: 那请问在哪里可以看到这个key的使用量,我在高德开发平台没看到这个

    2024-07-24 08:21

LGG233

LGG233 - others

有没有考虑过自己的问题,uniapp官方很累的好不好,工资涨没涨,有没有好好工作【狗头】

要回复问题请先登录注册