getLocation fail getLocation fail not support gcj02 uni-app 腾讯地图自定义基座报错

getLocation fail getLocation fail not support gcj02 uni-app 腾讯地图自定义基座报错

类别 信息
产品分类 uniapp/App
PC开发环境 Windows
PC开发环境版本 win10
HBuilderX类型 正式
HBuilderX版本 4.45
手机系统 Android
手机系统版本 Android 9.0
手机厂商 小米
手机机型 小米6
页面类型 vue
vue版本 vue3
打包方式 云端
项目创建方式 HBuilderX

示例代码:

// 获取当前定位  
export function getLocation(success : Function = function() {}) {  
    uni.getLocation({  
        type: 'gcj02',  
        // 传入true会返回高度信息  
        altitude: false,  
        // 是否解析地址信息  
        geocode: false,  
        // 开启高精度定位  
        isHighAccuracy: true,  
        success: function(suc: any) {  
            success({  
                speed: suc.speed,  
                longitude: suc.longitude.toFixed(6),  
                latitude: suc.latitude.toFixed(6)  
            });  
        },  
        fail: function(err) {  
            uni.showToast({  
                title: '获取定位失败,请检查是否开启定位',  
                icon: 'none',  
            })  
            console.log('获取定位失败', err)  
        }  
    });  
}

操作步骤:

如上

预期结果:

获取到定位信息

实际结果:

getLocation:fail getLocation:fail not support gcj02

bug描述:

腾讯地图定位在自定义基座提示不支持gcj02,标准基座是没问题,这个怎么解决?


更多关于getLocation fail getLocation fail not support gcj02 uni-app 腾讯地图自定义基座报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于getLocation fail getLocation fail not support gcj02 uni-app 腾讯地图自定义基座报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这个错误是因为腾讯地图自定义基座默认不支持GCJ-02坐标系导致的。解决方法如下:

  1. 在manifest.json中配置腾讯地图参数:
"app-plus": {
    "maps": {
        "qqmap": {
            "key": "你的腾讯地图key",
            "type": "gcj02"  // 添加这行配置
        }
    }
}
  1. 如果仍然报错,可以尝试改用WGS84坐标系:
uni.getLocation({
    type: 'wgs84',  // 改为wgs84
    // 其他参数保持不变
});
回到顶部