在 UniApp 中使用谷歌地图,可以通过以下步骤实现:
1. 使用 WebView 嵌入谷歌地图网页
- 在 UniApp 页面中添加
<web-view> 组件。
- 将谷歌地图的 URL(需包含 API 密钥)作为
src 属性传入。
示例代码:
<template>
<view>
<web-view src="https://www.google.com/maps/embed/v1/place?key=YOUR_API_KEY&q=地点名称"></web-view>
</view>
</template>
注意:
- 替换
YOUR_API_KEY 为你在 Google Cloud Console 申请的有效 API 密钥。
- 确保启用 “Maps Embed API” 和 “Maps JavaScript API”。
2. 通过 JavaScript SDK 自定义地图(需结合 H5 或混合开发)
- 在
index.html 中引入谷歌地图 JavaScript API。
- 通过
vue 组件或 plus 接口调用地图功能。
示例步骤:
- 在
index.html 的 <head> 中添加:
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=places"></script>
- 在 Vue 组件中初始化地图:
<template>
<view>
<div id="map" style="width:100%; height:300px;"></div>
</view>
</template>
<script>
export default {
mounted() {
if (typeof google !== 'undefined') {
new google.maps.Map(document.getElementById('map'), {
center: { lat: 40.7128, lng: -74.0060 }, // 纽约坐标
zoom: 8
});
}
}
}
</script>
3. 使用第三方 UniApp 插件
- 在插件市场搜索 “谷歌地图” 相关插件(如
uni-google-maps),按文档集成。
注意事项:
- 平台限制:WebView 方式在 App 和 H5 中可用,但功能较基础;SDK 方式主要适用于 H5。
- API 密钥安全:避免在前端硬编码密钥,建议通过服务器代理请求或使用限制域名。
- 性能优化:在 App 中频繁使用地图时,推荐使用原生插件以提升体验。
如需完整项目示例或进一步协助,请提供具体使用场景(如需要路线规划、标记点等)。