APP端使用uni.chooseLocation,配置腾讯地图KEY,进行页面选点;
- 发布:2026-02-09 10:43
- 更新:2026-02-09 11:11
- 阅读:31
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 11 专业版
HBuilderX类型: 正式
HBuilderX版本号: 4.87
手机系统: Android
手机系统版本号: Android 16
手机厂商: 小米
手机机型: Xiaomi 15 Pro
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
地图页面显示正常
地图页面显示正常
实际结果:
地图显示空白
地图显示空白
bug描述:
1、APP端使用uni.chooseLocation功能,配置的是腾讯地图,但是打开的页面地图是空白的;
2、manifest.json已经配置相关信息;
3、腾讯地图确定有额度和配置了SDK,而且没有限制包名;
4、使用了uni-map-co,并且已经配置了KEY;
在自定义打包并运行在真机上后,使用uni.chooseLocation功能控制台会报错
10:40:52.082 [JS Framework] 当前运行的基座不包含原生插件[mapSearch],请在manifest中配置该插件,重新制作包括该原生插件的自定义运行基座
10:40:52.097 Gelocation Error: code - 18; message - not support gcj02 at template/__uniappchooselocation.nvue:292
欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
作为 DCloud 官方人员,我对该 bug 反馈进行如下评审:
✅ 一、反馈完整性评估
| 检查项 | 状态 | 说明 |
|---|---|---|
| BUG 标题 | ✅ | 明确指出了“APP端-腾讯地图-uni.chooseLocation”问题 |
| BUG 描述 | ✅ | 描述了地图空白、控制台报错、配置已检查等关键信息 |
| 代码示例 | ❌ | 缺失可运行的最小复现代码,建议补充调用 uni.chooseLocation 的代码片段 |
| 复现步骤 | ⚠️ | 仅一句话“APP端使用uni.chooseLocation”,建议补充:<br>1. manifest.json 中地图配置截图或代码<br>2. 是否使用自定义基座<br>3. 是否调用 uni-map-co |
| 预期结果 | ✅ | 地图页面正常显示 |
| 实际结果 | ✅ | 地图空白,控制台报错 |
| 分类信息 | ✅ | 提供了完整的环境信息:HBuilderX 4.87、Android 16、小米15 Pro、Vue2 |
⚠️ 二、问题是否成立
根据知识库内容,该问题成立,且为已知常见问题,原因如下:
✅ 报错信息匹配知识库
- 报错:
[JS Framework] 当前运行的基座不包含原生插件[mapSearch]...与知识库中 [ISSUE 系统] 所述一致:
“标准基座没问题,自有证书打的apk包和自定义基座都报错...”
参考链接
✅ 腾讯地图配置要求
- 必须使用 自定义基座 或 打包后安装,标准基座不支持腾讯地图的
mapSearch插件。 - 必须在
manifest.json中正确配置腾讯地图 key,并确保:- 域名白名单为空(App 端)
- 已勾选地图模块
- 已配置 uni-map-co(如使用安全网络)
✅ 三、是否为基础概念误用
否。该问题不是误报,而是配置不完整或未使用自定义基座导致的原生插件缺失问题。
✅ 四、官方建议
✅ 立即执行项
- 使用自定义基座运行(非标准基座)
- 确认 manifest.json 配置完整:
"app-plus": { "distribute": { "sdkConfigs": { "maps": { "qqmap": { "key": "你的腾讯地图key" } } } } } - 确认已勾选地图模块(manifest.json → App模块配置 → 地图)
- 如使用 uni-map-co,请确保:
- 已上传 uni-map-co 云对象
- 已配置安全网络
- 已设置
useSecureNetwork: true
✅ 可选替代方案
- 若腾讯地图仍不可用,可临时切换为 高德地图(需商业授权)
- 插件市场已有免费地图插件可尝试:地图插件搜索
✅ 五、反馈建议补充内容
为便于进一步排查,请补充以下内容:
- manifest.json 中地图相关配置截图
- 是否使用自定义基座运行
- 是否调用 uni-map-co,是否配置安全网络
- 最小复现代码片段(如调用 uni.chooseLocation 的方式)
✅ 结论
该反馈问题成立,信息较完整,但缺少代码示例与复现细节。建议用户按上述官方建议检查后,如仍有问题,可补充信息继续跟进。
1***@qq.com (作者)
1、已上传manifest.json 中地图相关配置截图;
2、使用了自定义基座运行;
3、调用了uni-map-co,配置了安全网络;
const result = await uni.chooseLocation({
useSecureNetwork: true
});
