app-maps.md 5.8 KB
Newer Older
DCloud-yyl's avatar
DCloud-yyl 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
App端地图模块封装了市场上主流的三方地图SDK,提供JS API统一调用Android、iOS原生地图功能。

|项目类型|API|
|:-|:-|
|uni-app|[uni.getLocation(OBJECT)](https://uniapp.dcloud.io/api/location/location?id=getlocation)[uni.chooseLocation(OBJECT)](https://uniapp.dcloud.io/api/location/location?id=chooselocation)[uni.openLocation(OBJECT)](https://uniapp.dcloud.io/api/location/open-location?id=openlocation)[uni.createMapContext(mapId,this)](api/location/map?id=createmapcontext)[map](component/map)组件|
|5+App/Wap2App|[plus.maps.*](https://www.html5plus.org/doc/zh_cn/maps.html)

使用地图功能需在项目manifest.json的“App模块配置”中勾选“Maps(地图)”,并根据项目实际情况勾选使用的三方地图SDK:
![](https://partner-dcloud-native.oss-cn-hangzhou.aliyuncs.com/images/uniapp/maps/modules.png)

> 提示:App模块配置需提交云端打包后才能生效,真机运行调试时请使用[自定义基座](http://ask.dcloud.net.cn/article/35115)

**注意**  
- 使用高德地图、百度地图需要商业授权,详情参考 [商业授权相关说明](app-geolocation?id=business)  
- uni-app项目中仅nvue页面支持使用原生SDK
- uni-app项目暂时不支持使用百度地图


### 高德地图  

#### 申请高德地图Key  
使用前需到[高德开放平台](https://lbs.amap.com/)创建应用并申请Key
- 登录 [高德开放平台](https://lbs.amap.com/),进入“控制台”,如果没有注册账号请先根据页面提示注册账号  
- 打开 “应用管理” -> “我的应用”页面,点击“创建新应用”,根据页面提示填写内容创建应用
- 在应用下点击“添加”为应用添加Key,根据需要分别为Android平台、iOS平台申请Key

#### 配置使用高德地图  
打开项目的manifest.json文件,在“App模块配置”项的“Maps(地图)”下,勾选“高德地图”:
![](https://partner-dcloud-native.oss-cn-hangzhou.aliyuncs.com/images/uniapp/maps/amap.png)

#### 参数说明  
- appkey_android  
高德开放平台申请的Android平台Key
- appkey_ios  
高德开放平台申请的iOS平台Key

**注意**
- HBuilderX标准基座默认使用高德地图SDK,可以直接真机运行测试,此时配置的应用包名、签名信息不生效,正式发布前请提交云端打包或使用[自定义调试基座](https://ask.dcloud.net.cn/article/35115)测试
- 本地离线打包参考[Android平台高德地图模块配置](https://nativesupport.dcloud.net.cn/AppDocs/usemodule/androidModuleConfig/map?id=%e9%ab%98%e5%be%b7%e5%9c%b0%e5%9b%be)[iOS平台高德地图模块配置](https://nativesupport.dcloud.net.cn/AppDocs/usemodule/iOSModuleConfig/map?id=%e9%ab%98%e5%be%b7%e5%9c%b0%e5%9b%be)


### 百度地图  

#### 申请百度地图Key  
使用前需到[百度开放平台](https://lbsyun.baidu.com/)创建应用并申请Key
- 登录 [百度开放平台](https://lbsyun.baidu.com/),进入“控制台”,如果没有注册账号请先根据页面提示注册账号  
- 打开 “应用管理” -> “我的应用”页面,点击“创建应用”,根据页面提示填写内容创建应用获取Key

#### 配置使用百度地图  
打开项目的manifest.json文件,在“App模块配置”项的“Maps(地图)”下,勾选“百度地图”:
![](https://partner-dcloud-native.oss-cn-hangzhou.aliyuncs.com/images/uniapp/maps/bmap.png)

#### 参数说明  
- appkey_android  
百度地图开放平台申请的Android平台Key
- appkey_ios  
百度地图开放平台申请的iOS平台Key

**注意**
- HBuilderX标准基座没有包含百度地图,请配置后使用[自定义调试基座](https://ask.dcloud.net.cn/article/35115)测试
- 本地离线打包参考[Android平台百度地图模块配置](https://nativesupport.dcloud.net.cn/AppDocs/usemodule/androidModuleConfig/map?id=%e7%99%be%e5%ba%a6%e5%9c%b0%e5%9b%be)[iOS平台百度地图模块配置](https://nativesupport.dcloud.net.cn/AppDocs/usemodule/iOSModuleConfig/map?id=%e7%99%be%e5%ba%a6%e5%9c%b0%e5%9b%be)


64
### Google地图(谷歌地图/google map)
DCloud-yyl's avatar
DCloud-yyl 已提交
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90

> HBuilderX3.4.0+版本新增支持

#### 申请Google地图Key  
使用前需到[Google地图开放平台](https://console.cloud.google.com/google/maps-apis)创建应用并申请APIKey
- 登录 [Google地图开放平台](https://console.cloud.google.com/google/maps-apis),如果没有注册账号请先根据页面提示注册账号  
- 根据页面提示新建项目,也可以选择已经存在的项目  
- 打开“凭证”页面,点击 “创建凭证” -> “API密钥”获取APIKey,由于Google地图需要收费,为了保证安全建议配置限制密钥
  + Android平台  
  在“应用限制”下勾选“Android应用”,并添加绑定“软件包名称”、“SHA-1证书指纹”;在“API限制”下建议勾选“不限制密钥”  
  + iOS平台  
  在“应用限制”下勾选“iOS应用”,并添加绑定“软件包ID”;在“API限制”下建议勾选“不限制密钥”  

#### 配置使用Google地图  
打开项目的manifest.json文件,在“App模块配置”项的“Maps(地图)”下,勾选“Google地图”:
![](https://partner-dcloud-native.oss-cn-hangzhou.aliyuncs.com/images/uniapp/maps/gmap.png)

#### 参数说明  
- APIKey_android  
Google地图开放平台申请的Android平台APIKey
- APIKey_ios  
Google地图开放平台申请的iOS平台APIKey

**注意**
- Google地图在Android、iOS平台SDK不支持POI搜索,无法直接使用[uni.chooseLocation(OBJECT)](https://uniapp.dcloud.io/api/location/location?id=chooselocation),可以申请Web Server APIKey在业务服务器端进行POI搜索,在App端自己实现chooseLocation相关功能
- HBuilderX标准基座没有包含Google地图,请配置后使用[自定义调试基座](https://ask.dcloud.net.cn/article/35115)测试