作者: zhangxp1234
发布时间: 最新推荐文章于 2026-05-18 18:03:59 发布
来源: https://blog.csdn.net/m0_74451345/article/details/160721135
目 录
【腾讯位置服务开发者征文大赛】校园美食雷达 —— 基于 CodeBuddy + 腾讯 LBS 开发实战
2.6 在 CodeBuddy 中导入腾讯地图 Skill 包
4 🤖 混元大模型 API 配置与 AI 智能搜索功能实现(核心章节)
4.2 混元大模型 API Key 创建全流程(新手零踩坑)
4.3 在 CodeBuddy 中配置双 Key,完善 AI 搜索代码
结合高校学生日常刚需,校园周边美食选择难、筛选繁琐、距离把控不清晰成为普遍痛点。
传统地图仅提供基础 POI 检索,缺少学生视角的平价、近距离、口味偏好筛选。
本文依托CodeBuddy 云端开发平台 + 腾讯位置服务全套能力,快速搭建轻量化 Web 应用,打造一款专为大学生服务的「校园周边美食智能检索工具」,依托 AI 语义理解 + 地图 POI 检索,轻松实现校园附近美食精准推荐、步行路线规划。
本次项目全程使用 CodeBuddy 云端 IDE 完成开发,它是腾讯推出的 AI 辅助开发工具,对新手极其友好:
下面是 Windows 系统下的完整安装流程,全程无坑,跟着操作即可👇
步骤 1:进入 CodeBuddy 官网,下载安装包
首先打开 CodeBuddy 官网,点击「开始使用」进入主页,找到右上角的「下载」按钮,选择「CodeBuddy IDE」版本下载。
步骤 2:获取 Windows 安装包
官网提供 Windows、Mac 等多平台安装包,这里我们选择 Windows 版,下载完成后,会得到一个.exe格式的安装程序。
步骤 3:双击安装包,启动安装向导
找到下载好的CodeBuddy-win32-x64-user-xxx.exe文件,双击运行,启动安装向导。
步骤 4:同意许可协议
安装向导会弹出许可协议窗口,勾选「我同意此协议」,然后点击「下一步」继续。
步骤 5:自定义安装路径
这里建议选择非系统盘(如 D 盘)安装,避免占用 C 盘空间,你可以点击「浏览」自定义安装位置,设置完成后点击「下一步」。
步骤 6:设置开始菜单快捷方式
保持默认设置即可,直接点击「下一步」,安装程序会自动在开始菜单创建快捷方式,方便后续启动。
步骤 7:配置附加任务(关键!)
这里有两个关键选项建议保持勾选:
步骤 8:确认安装信息,准备安装
这一步会汇总你的所有安装设置,确认无误后点击「安装」,开始安装过程。
步骤 9:等待安装进度完成
安装程序会自动解压文件,进度条走完即可,全程无需额外操作,耐心等待即可。
步骤 10:安装完成,启动 CodeBuddy
安装完成后,勾选「运行 CodeBuddy CN」,点击「完成」,即可启动 CodeBuddy IDE,准备开始我们的校园美食雷达项目开发!
在正式启动项目前,我们需要先准备好腾讯位置服务官方提供的开发资源包,这些Skill包是后续实现校园美食检索、地图渲染的核心工具,能帮我们快速调用官方接口,大幅降低开发门槛。
解压后的资源包目录结构
我们将下载好的资源包解压到了电脑的非系统盘(D:\codebuddy\skills\),目录里包含三个核心开发包,分别对应我们项目的不同能力模块:
安装完成后,我们启动 CodeBuddy IDE,完成初始化配置并登录账号,解锁 AI 辅助开发、在线预览等核心功能,为后续开发做好准备。
步骤 1:启动 CodeBuddy,进入欢迎界面
双击桌面的 CodeBuddy 快捷方式,启动 IDE,首先会看到欢迎界面,点击「开始使用」进入初始化流程。
步骤 2:选择 UI 风格
这里可以选择浅色 / 深色模式,我选择了深色模式,对长时间写代码更友好,后续也可以随时在设置中修改,选择完成后点击「继续」。
步骤 3:导入配置(新手直接跳过)
如果之前使用过 VS Code,可以一键导入配置,这里我们直接点击「跳过」,使用默认配置即可,不影响后续开发。
步骤 4:登录 CodeBuddy 账号
初始化完成后,会进入登录界面,点击「登录」按钮,进入登录页面。
步骤 5:扫码登录,完成账号验证
这里支持微信扫码登录,勾选「我已阅读并同意《服务条款》和《隐私协议》」,用微信扫码即可快速登录,无需额外注册账号,操作非常便捷。
步骤 6:登录成功,进入 IDE 主界面
扫码登录完成后,会提示「登录成功」,返回 IDE 继续使用,即可进入 CodeBuddy 的主界面。
步骤 7:准备创建 / 打开项目
进入主界面后,我们可以看到「新建文件夹」、「打开文件夹」、「克隆 Git 仓库」三个选项,接下来我们会在这里打开之前解压的腾讯地图 Skill 资源包,正式开始校园美食雷达项目的开发。
上面我们已经展示了解压后的资源包,下面我们来看看这些资源包是怎么从官方渠道获取的,确保大家都能拿到完整的开发工具。
步骤 1:进入腾讯位置服务官网,下载 Agent Skills 开发包
登录腾讯位置服务官网,进入「Agent Skills」-「地图技能」-「基础能力 Skill」页面,这里提供了三个和我们项目强相关的核心开发包,全部下载备用:
步骤 2:下载并保存压缩包
点击下载地址,会得到三个.zip压缩包,建议统一保存到电脑的非系统盘(比如D:\TencentMap_skills\),避免后续找不到文件,也方便解压后直接用 CodeBuddy 打开。
CodeBuddy 支持导入第三方技能包,让 AI 助手自动调用腾讯位置服务的接口能力,大幅降低开发门槛。我们需要将之前解压的三个核心 Skill 包导入到 CodeBuddy 中,为后续的校园美食检索、地图渲染、路线规划功能做好准备。
步骤 1:确认需要导入的 Skill 包目录
在之前解压的TencentMap_jsapi_skills-main文件夹中,我们可以看到核心的tencentmap-jsapi-gl-skill目录,这是我们项目中用于前端地图渲染的关键技能包,后续的校园地图初始化、美食点位标记都依赖它。我们先记住这个目录的路径,后续导入时会用到。
步骤 2:打开 CodeBuddy 设置面板,进入 Skill 管理界面
点击 CodeBuddy 主界面右上角的「设置」图标(齿轮形状),打开设置面板,这里可以管理插件、技能、规则等配置。
步骤 3:进入「技能」标签页,准备导入 Skill 包
在设置面板中,切换到「技能」标签页,然后选择「用户 Skill」分类,这里会显示所有已导入的第三方技能包。点击右上角的「+ 导入 Skill」按钮,开始导入我们的腾讯地图技能包。
步骤 4:导入前端地图渲染技能包 tencentmap-jsapi-gl-skill
在弹出的文件选择窗口中,找到之前解压的tencentmap-jsapi-gl-skill文件夹,选中它并点击「选择 Skill 文件夹」,完成导入。导入成功后,右侧的用户 Skill 列表中会显示这个技能包,它的作用是为我们提供腾讯地图 JSAPI GL 的渲染能力,支持校园地图的初始化、3D 视图控制、美食点位标记等功能。
步骤 5:导入 LBS 综合服务技能包 tencentmap-lbs-skill
重复导入步骤,这次我们导入tencentmap-lbs-skill技能包。这个技能包是校园美食雷达的核心,它提供了周边 POI 搜索、路线规划、轨迹可视化等 LBS 综合服务,后续我们就是用它来实现校园周边美食店铺的检索和步行路线规划。
步骤 6:查看导入成功提示
导入完成后,CodeBuddy 界面左下角会弹出「Skill 文件夹 “tencentmap-lbs-skill” 导入成功」的提示,说明技能包已经成功加载,AI 助手现在可以调用这个技能包的能力了。
步骤 7:确认所有 Skill 包导入成功
按照同样的方法,我们导入第三个技能包tencent-lbs-webservice,它提供了 WebService API 的调用能力,支持地址转换、天气查询等辅助功能。导入完成后,右侧的用户 Skill 列表中会显示三个腾讯地图技能包,全部处于启用状态,说明导入成功。
步骤 8:导入 WebService API 技能包的注意事项
在导入tencent-lbs-webservice时,需要注意:直接选中解压后的大文件夹TencentMap_webservice_skills-main即可,无需进入子目录,这样 CodeBuddy 才能正确识别技能包的配置文件,确保 API 调用能力正常生效。
步骤 9:点击「开始工作」,进入正式开发模式
所有技能包导入完成后,我们回到 CodeBuddy 主界面,点击中间的「开始工作」按钮,进入正式的开发模式。现在,我们的开发环境已经完全搭建好了,接下来就可以开始编写校园美食雷达的核心代码了!
步骤 10:进入代码开发模式,准备添加项目文件
进入开发模式后,我们首先选择「代码开发」模式,这是专门为编程场景设计的模式,支持文件添加、AI 辅助编码等功能。界面下方的「添加文件」图标可以让我们后续快速关联项目文件,为创建 HTML 文件、引入腾讯地图 SDK 做好准备。
到这里,我们已经完成了 CodeBuddy 开发环境的全部搭建工作:✅ CodeBuddy IDE 的安装、初始化与账号登录✅ 腾讯位置服务三个核心 Skill 包的下载、解压与导入✅ 开发模式的准备,AI 助手已具备调用腾讯地图能力的条件
下一章我们将正式进入项目实操环节,基于 CodeBuddy 创建项目文件、引入腾讯地图 SDK,并实现校园地图的初始化渲染,让你直观看到项目效果!
现在我们的开发环境已经准备就绪,接下来就可以让 CodeBuddy 的 AI 助手帮我们生成校园美食雷达的核心代码了。
步骤 1:提交项目需求文档,启动 AI 生成
我们把之前梳理好的项目需求文档(foodneed.md,包含校园美食雷达的功能模块、技术栈说明、交互逻辑)添加到 CodeBuddy 中,然后在输入框提交指令:“根据该需求文档的技术讲解以及功能模块说明,帮我完成该 html 项目”。CodeBuddy 会自动解析文档内容,结合我们导入的腾讯地图 Skill 包,生成完整的项目代码。
步骤 2:查看 AI 生成的项目文件
提交需求后,CodeBuddy 会自动生成项目文件,包括index.html(主页面代码)和README.md(项目说明文档)。不过在预览地图的时候,会提示「鉴权失败,请传入正确的 key」—— 这是因为腾讯地图的 JSAPI 需要 API Key 进行身份验证,我们还没有配置自己的 Key,接下来就来解决这个问题。
API Key 是腾讯位置服务的身份凭证,用于验证我们的应用调用接口的合法性,是地图加载、POI 搜索、路线规划等所有功能正常使用的前提。
步骤 1:登录腾讯位置服务控制台
打开腾讯位置服务官网(https://lbs.qq.com/),点击页面右上角的「控制台」按钮,登录你的开发者账号(个人开发者可免费注册,无需企业资质)。
步骤 2:进入「我的应用」管理页面
登录成功后,在控制台左侧导航栏中,找到「应用管理」→「我的应用」,点击进入应用管理页面,这里可以创建和管理我们的所有应用。
步骤 3:创建新应用
在「我的应用」页面,点击中间的「+ 创建应用」按钮,开始为我们的校园美食雷达项目创建专属应用。
步骤 4:填写应用基础信息
在弹出的「创建应用」窗口中,填写以下信息:
步骤 5:为应用添加 API Key
应用创建成功后,会进入应用详情页,点击页面中的「添加 Key」按钮,开始为应用创建 API Key。
步骤 6:配置 API Key 的权限
在「添加 Key」页面,我们需要配置 Key 的启用产品和权限:
勾选「WebServiceAPI」:支持地址转换、POI 搜索、路线规划等后端接口调用勾选「SDK」(地图 SDK):支持 JSAPI GL 前端地图渲染,实现地图初始化、点位标记等功能
步骤 7:同意协议并完成 Key 创建
勾选页面底部的「阅读并同意《腾讯位置服务开放 API 服务协议》和《腾讯位置服务隐私协议》」,然后点击「添加」按钮,完成 Key 的创建。
步骤 8:确认 Key 配置信息
创建成功后,我们可以在应用详情页看到生成的 API Key,同时确认启用的产品包含 WebServiceAPI 和 SDK,这样后续我们的项目就能正常调用腾讯地图的所有接口了。
上一章我们完成了腾讯位置服务 API Key 的配置,解决了地图加载的鉴权问题。本章我们将配置混元大模型 API Key,实现项目的核心亮点 ——AI 智能美食搜索功能:用户输入 “人均 20 以内、近宿舍的平价美食”,AI 会自动解析需求并筛选符合条件的店铺,让校园美食检索更贴合口语化场景。
我们的 AI 搜索功能依赖大模型的自然语言理解能力,选择混元大模型主要有 3 个原因:
步骤 1:进入腾讯云 TokenHub 模型广场
打开腾讯云 TokenHub 控制台,在左侧导航栏选择「模型广场」,找到 「混元 HY 2.0 Instruct」模型 卡片,点击「API 调用」按钮,进入模型详情页。
💡 说明:HY 2.0 Instruct 是混元大模型的对话优化版本,专门针对文本生成、指令理解场景优化,是我们实现 AI 美食搜索的首选模型。
步骤 2:获取 API Key 管理入口
在模型详情页,点击「前往 API Key 管理」按钮,跳转到 API Key 创建页面。这里可以看到混元模型的 API 调用示例代码,后续对接时会用到。
步骤 3:创建专属 API Key
在 API Key 管理页面,点击「创建 API Key」按钮,开始为项目创建专属调用凭证。
步骤 4:填写 API Key 关键信息
在弹出的「创建 API Key」窗口中,填写以下信息:
步骤 5:获取并保存 API Key
创建成功后,API Key 会显示在列表中,点击复制按钮,把 Key 保存到安全的地方(后续需要在项目中配置,注意不要泄露给他人)。
拿到混元大模型 API Key 后,我们回到 CodeBuddy 中,把腾讯地图 API Key和混元大模型 API Key都配置到项目中,同时优化 AI 搜索的交互逻辑。
在 CodeBuddy 的输入框中,提交提示词,让 AI 助手帮我们完成 Key 配置和代码优化:
我的腾讯位置服务Key为:[你的腾讯地图Key],我的混元大模型API Key为:[你的混元Key],帮我填写到项目中需要的地方。我正在开发「校园美食雷达」网页项目,使用腾讯地图JSAPI GL实现校园美食点位展示和AI智能搜索,现在地图一直卡在「正在初始化地图…」无法加载,请帮我修复index.html代码,让自然语言解析功能正常工作,同时优化地图加载和点位渲染逻辑,生成可以直接运行的完整版本。
通过反复和 CodeBuddy 交互,我们完成了 3 个关键优化:
代码修改完成后,我们需要在本地启动一个 HTTP 服务,测试项目的完整功能,确保地图加载、点位标记、AI 搜索、多条件筛选等所有功能都能正常工作。
步骤 1:启动本地 HTTP 服务
这里我们使用 Python 自带的http.server模块,无需额外安装复杂环境,一键启动本地服务:
cd c:/Users/Administrator/CodeBuddy/20260504103048
2. 启动 Python HTTP 服务,端口设置为 8080(和项目配置一致):
python -m http.server 8080
步骤 2:项目全功能运行效果展示
在浏览器中打开http://localhost:8080,可以看到完整的校园美食雷达界面,所有功能均正常工作:
到这里,我们的校园美食雷达项目已经实现了全功能闭环:
✅ 配置了混元大模型 API Key,为 AI 智能搜索功能提供了核心能力支持
✅ 在 CodeBuddy 中完成了双 Key 配置和代码优化,解决了地图加载和 AI 接口调用问题
✅ 使用 Python HTTP 服务本地部署项目,完成了全功能测试
✅ 项目成功运行,实现了地图加载、美食点位标记、热力图层渲染、AI 自然语言搜索、多条件筛选等所有预期功能
完成腾讯地图 + 混元大模型双 Key 全流程配置后,通过 Python HTTP本地服务 启动项目,访问 http://localhost:8080 即可一键加载完整项目。
同时本次项目修复了多项核心兼容性问题:
本次测试基础预算类自然语言需求,用户输入口语化查询:人均20以内的小吃
充分验证了 AI 大模型对学生日常美食预算需求的结构化解析能力。
本次测试多维度复合型校园美食需求,用户输入组合口语:近宿舍的可打包美食
验证了项目 AI 多意图并行拆解、多条件叠加筛选的稳定运行能力。
本次测试排序规则切换类 AI 需求,用户输入查询:好评高的餐厅
实现了 AI 根据用户语义,智能切换地图 POI 展示排序逻辑。
本次测试极端无效、无匹配数据的边界异常场景,用户输入不符合校园实际需求:人均10元以下的米其林餐厅
对标商业项目标准,完成全场景异常边界容错处理。
对标参考博文情绪热力地图架构,本项目实现 4 套独立可控美食热力图层:
支持单开关独立启停、多图层叠加渲染,和 AI 搜索结果双向联动,直观展示校园全域美食分布热度。
功能说明
解决了腾讯地图 beta 版加载超时、主线程阻塞渲染的问题,实现了地图秒开 + 无白屏的稳定初始化,为后续所有功能提供基础支撑。
// 1. 动态加载腾讯地图JSAPI(稳定版v=1,解决beta版超时问题)
function loadTencentMap() {
return new Promise((resolve, reject) => {
if (typeof TMap !== 'undefined') { resolve(); return; }
// 关键:使用官方稳定版,而非测试版beta
const script = document.createElement('script');
script.src = `https://map.qq.com/api/gljs?v=1&key=${CONFIG.tmapKey}&libraries=service,visualization`;
script.async = true;
document.head.appendChild(script);
});
}
// 2. 地图初始化(异步空闲渲染,避免阻塞主线程)
function initMap() {
const campus = campusData[0];
const center = new TMap.LatLng(campus.center.lat, campus.center.lng);
map = new TMap.Map('map', { zoom: 16, center: center });
// 关键优化:用浏览器空闲时间执行非关键渲染任务
const scheduleWork = (callback) => {
if (typeof requestIdleCallback !== 'undefined') {
requestIdleCallback(callback);
} else {
setTimeout(callback, 50);
}
};
// 优先执行地图点击事件(主线程)
map.on('click', () => closeInfoWindow());
// 空闲时执行标记、热力图、边界渲染(不阻塞地图)
scheduleWork(() => addFoodMarkers());
scheduleWork(() => initHeatmap());
scheduleWork(() => addCampusBoundary());
}
效果说明
功能说明
实现了美食标记点击交互、信息弹窗、路线规划与一键导航,同时解决了 Emoji 图标导致的btoa编码报错问题,和你截图中的功能完全对应。
// 1. 添加美食标记(关键修复:移除Emoji,改用纯SVG图标)
function addFoodMarkers() {
const iconHTML = `<svg width="32" height="40" viewBox="0 0 32 40">
<path d="M16 0C7.163 0 0 7.163 0 16c0 12 16 24 16 24s16-12 16-24c0-8.837-7.163-16-16-16z" fill="#667eea"/>
<circle cx="16" cy="14" r="8" fill="white"/>
<text x="16" y="18" text-anchor="middle" font-size="10" fill="#667eea">F</text>
</svg>`;
const icon = 'data:image/svg+xml;base64,' + btoa(iconHTML); // 无Emoji,无编码报错
mockFoodData.forEach(food => {
const marker = new TMap.MultiMarker({
map: map,
styles: { marker: new TMap.MarkerStyle({ width: 32, height: 40, src: icon }) },
geometries: [{ id: food.id, position: new TMap.LatLng(food.lat, food.lng) }]
});
// 标记点击事件:弹出信息窗
marker.on('click', (e) => showPOIInfo(food, e.geometry.position));
});
}
// 2. 显示POI信息窗体(和你截图中的弹窗完全对应)
function showPOIInfo(food, position) {
selectedPOI = food;
closeInfoWindow();
new TMap.InfoWindow({
map: map,
position: position,
content: `
<div class="info-window">
<div class="info-title">${food.name}</div>
<div class="info-address">${food.address}</div>
<div class="info-tags">${food.tags.map(tag => `<span class="result-tag">${tag}</span>`).join('')}</div>
<button class="info-btn" onclick="planRoute()">规划路线</button>
</div>
`,
offset: { x: 0, y: -40 }
}).open();
}
// 3. 步行路线规划 + 一键导航
async function planRouteTo(destLat, destLng) {
const dest = new TMap.LatLng(destLat, destLng);
const start = userLocation || new TMap.LatLng(campusData[0].center.lat, campusData[0].center.lng);
// 调用腾讯地图步行路线API
const walking = new TMap.service.Walking();
const result = await walking.search({ from: start, to: dest });
if (result.result?.routes?.length > 0) {
const route = result.result.routes[0];
// 绘制蓝色步行轨迹
routePolyline = new TMap.Polyline({
map: map,
styles: { 'route': new TMap.PolylineStyle({ color: '#667eea', width: 6 }) },
geometries: [{ styleId: 'route', path: route.polyline }]
});
showRoutePanel(route); // 显示路线详情面板
}
}
// 一键调起腾讯地图导航
function startNavigation() {
if (!selectedPOI) return;
const url = `https://apis.map.qq.com/uri/v1/routeplan?type=walking&to=${encodeURIComponent(selectedPOI.name)}&tocoord=${selectedPOI.lat},${selectedPOI.lng}`;
window.open(url, '_blank');
}
效果说明
功能说明
实现了平价、好评、近距、场景四类热力图层的独立开关与动态数据更新,根据用户筛选条件实时渲染热力效果,和参考博主的「情绪热力地图」功能完全对齐。
// 初始化热力图
function initHeatmap() {
heatmapLayer = new TMap.visualization.Heat({
radius: 40,
gradientColor: {
0.2: 'rgba(74, 222, 128, 0.5)', // 平价层(绿色)
0.5: 'rgba(245, 158, 11, 0.7)', // 好评层(黄色)
0.8: 'rgba(59, 130, 246, 0.8)', // 近距层(蓝色)
1: 'rgba(102, 126, 234, 1)' // 场景层(紫色)
},
opacity: 0.7
});
heatmapLayer.addTo(map);
}
// 开关图层时动态更新热力数据
function updateHeatmapData() {
if (!heatmapLayer) return;
// 获取当前激活的图层
const activeLayers = [];
document.querySelectorAll('.layer-item.active').forEach(item => {
activeLayers.push(item.dataset.layer);
});
// 根据开关条件过滤数据
let filteredData = mockFoodData;
if (activeLayers.includes('budget')) filteredData = filteredData.filter(f => f.price <= 30);
if (activeLayers.includes('rating')) filteredData = filteredData.filter(f => f.rating >= 4.5);
if (activeLayers.includes('nearby')) filteredData = filteredData.filter(f => f.distance <= 500);
if (activeLayers.includes('scene')) filteredData = filteredData.filter(f => f.tags.includes('可自习'));
// 更新热力图数据
heatmapLayer.setData(filteredData.map(food => ({ lat: food.lat, lng: food.lng, count: 80 })));
}
效果说明
功能说明
生成校园美食专属分享卡片,支持复制文案,完善项目社交闭环,和参考博主的「路线分享」功能对应。
// 显示分享卡片
function showShareCard() {
const card = document.getElementById('shareCard');
const text = document.getElementById('shareText');
if (selectedPOI) {
// 选中店铺时,生成带店铺信息的文案
text.textContent = `🍜 ${selectedPOI.name}已解锁!步行 ${selectedPOI.distance}米可达,环境优美,性价比超高~`;
} else {
// 未选中店铺时,生成通用文案
text.textContent = '🍜 校园美食雷达 - 发现身边的平价美食,好评推荐,轻松找到最适合你的那一款!';
}
card.classList.toggle('show');
}
// 复制分享文案到剪贴板
function copyShare() {
const text = document.getElementById('shareText').textContent;
navigator.clipboard.writeText(text).then(() => {
showToast('文案已复制到剪贴板');
}).catch(() => {
showToast('复制失败');
});
}
效果说明
整理了开发过程中遇到的关键问题和解决方案,是 CSDN 读者最感兴趣的内容:
本项目基于CodeBuddy + 腾讯 LBS快速实现了一款面向高校学生的智能美食推荐应用,完整实现了:
项目从需求分析到功能落地,完整验证了 AI 与地图能力深度融合的实践过程,也解决了腾讯地图开发中的多个常见坑点,为同类型项目提供了可复用的思路与实践参考。
项目运行非常简单,仅需两步:
进入项目目录,启动本地 HTTP 服务:
python -m http.server 8080
打开浏览器,访问 http://localhost:8080 即可运行完整项目(需配置腾讯地图和混元大模型 API Key)
作者: Undoom 发布时间: 已于20260429 08:37:35修改 来源: https
在移动端地图应用开发中,离线地图功能是提升用户体验的关键技术之一尤其适用于网络信号不稳定区域如地下停
作者: Oo381 发布时间: 已于20260508 16:40:54修改 来源: https: