9***@qq.com
9***@qq.com
  • 发布:2026-04-17 10:34
  • 更新:2026-04-17 10:34
  • 阅读:16

【报Bug】[JS Framework] 当前运行的基座不包含原生插件[mapSearch],请在manifest中配置该插件,重新制作包括该原生插件的自定义运行基座

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: window11

HBuilderX类型: 正式

HBuilderX版本号: 4.76

手机系统: Android

手机系统版本号: Android 13

手机厂商: 小米

手机机型: 小米10s

页面类型: vue

vue版本: vue3

打包方式: 离线

项目创建方式: HBuilderX

操作步骤:
uni.chooseLocation({  
                success: function (res) {  
                    console.log('位置名称:' + res.name);  
                    console.log('详细地址:' + res.address);  
                    console.log('纬度:' + res.latitude);  
                    console.log('经度:' + res.longitude);  
                }  
            });

预期结果:

拉起地图显示,可以进行搜索

实际结果:

地图显示空白,搜索发生错误

bug描述:

根据官方文档https://nativesupport.dcloud.net.cn/AppDocs/usemodule/androidModuleConfig/map.html集成高德地图,获取定位uni.getLocation正常调用和map组件显示地图都没问题,但是调用uni.chooseLocation和uni.openLocation都不显示地图且搜索报错,显示如下警告信息:

[JS Framework] 当前运行的基座不包含原生插件[mapSearch],请在manifest中配置该插件,重新制作包括该原生插件的自定义运行基座  
[JS Framework] Failed to execute the callback function:  
 TypeError: Cannot read property 'poiSearchNearBy' of undefined  
10:30:57.902 reportJSException >>>> exception function:__WEEX_CALL_JAVASCRIPT__, exception:JavaScript execute error!Uncaught TypeError: Cannot read property 'poiSearchNearBy' of undefined  
 at search (/__uniappchooselocation.js.nvue:32:18246)  
 at  (/__uniappchooselocation.js.nvue:32:18026)

备注:同一套代码,使用标准基座一切正常,使用自定义基座出现上面问题

2026-04-17 10:34 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

作为DCloud官方人员,对这个bug反馈进行评审如下:

评审意见

1. 反馈质量评价

优点:

  • 问题描述清晰,明确区分了功能正常部分(uni.getLocation<map>组件)与异常部分(uni.chooseLocationuni.openLocation),这有助于快速定位问题范围
  • 提供了关键的对比信息:标准基座正常 vs 自定义基座异常,这是非常重要的排查线索
  • 包含完整的错误堆栈信息,有助于技术定位
  • 环境信息完整(HBuilderX 4.76、Android 13、Vue3等)

建议补充:

  • 建议补充manifest.json中App模块配置截图,特别是Maps模块的勾选情况
  • 建议说明自定义基座的制作方式(是否通过HBuilderX的"制作自定义基座"功能生成)

2. 问题性质判定

该反馈描述的情况不属于产品Bug,而是自定义基座配置使用问题。

根据知识库文档 app-maps 说明:

"App模块配置需提交云端打包后才能生效,真机运行调试时请使用自定义基座"

以及错误提示明确指出的:"当前运行的基座不包含原生插件[mapSearch]",说明问题在于自定义基座未包含地图搜索原生插件模块

3. 解决方案

根据知识库信息,请按以下步骤排查:

  1. 检查manifest配置
    manifest.json -> "App模块配置" -> "Maps(地图)"中,确保已勾选"高德地图"(因为uni.chooseLocationmapSearch功能依赖高德地图SDK)

  2. 重新制作自定义基座
    修改manifest配置后,必须重新制作自定义基座:

    • 运行 -> 运行到手机或模拟器 -> 制作自定义基座
    • 确保勾选包含Maps相关原生插件
  3. 检查高德后台配置
    如仍有问题,请确保高德开放平台后台配置的包名、SHA1与HBuilderX打包配置完全一致(参考知识库:ISSUE系统

  4. 版本注意事项
    当前使用的HBuilderX 4.76版本较旧(最新正式版为5.04),如问题持续建议升级后重试

4. 结论

这是一个配置使用类问题而非代码Bug。uni.chooseLocationuni.openLocation在App端依赖原生地图搜索插件(mapSearch),标准基座内置了该能力,而自定义基座需要在manifest中显式配置并重新生成。建议开发者按上述步骤检查manifest配置并重新制作自定义基座。

内容为 AI 生成,仅供参考

要回复问题请先登录注册