移动应用、浏览器端应用均可调起Android版百度地图。
该调用方式是指第三方基于Android SDK进行应用开发时要调用Android版百度地图客户端需遵守的协议。该协议要正确执行除了要参数填写正确外,还必须要安装Android百度地图。
1.1 实现原理
在百度地图的清单文件中对主页面设置了
android:scheme="baidumap"android:host="map"属性.指定了接受Uri的scheme为baidumap,host为map。当接收到指定Uri后,在主界面中对Uri进行解析和业务拆分,实现功能的调用。其中native:scheme为baidumap,host为mapweb:scheme为bdapp,host为map
1.2 使用方法
第三方APP在使用该类型接口时,手机中需要安装Android百度地图,同时需要拼写符合协议规范的Uri串,通过startActivity的方式进行调用。示例如下
// 调起出行早晚报页面Intent i1 = new Intent();i1.setData(Uri.parse("baidumap://map/newsassistant?src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/newsassistant?src=andr.baidu.openAPIdemo">调起出行早晚报页面</a>
在第三方APP中执行上述代码就可以打开百度地图的出行早晚报界面。如下图:
百度地图Open API所有接口共分为五类,分别为:图区功能类,搜索功能类,导航类,信息显示类和标准组件。每个接口对应一个专门的Uri串,每个串中相应参数会在下面详细说明。
2.1 通用参数
每个协议都可以填写的通用参数,其中coord_type指坐标类型参数,默认为bd09经纬度坐标,如用户使用的坐标类型为gcj02、wgs84,则必须传递此参数值(示例:coord_type=gcj02、coord_type=wgs84),否则会导致地点坐标位置偏移。src是统计必选参数,格式为:andr.companyName.appName。不传此参数,不保证服务。
参数说明
参数 | 描述 |
---|---|
coord_type | 坐标类型,可选参数,默认为bd09经纬度坐标。允许的值为bd09ll、bd09mc、gcj02、wgs84。bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托坐标,gcj02表示经过国测局加密的坐标,wgs84表示gps获取的坐标 |
src | 必选参数,格式为:andr.companyName.appName 不传此参数,不保证服务 |
2.2 图区功能
2.2.1 展示地图
展示地图,可通过zoom、center以及bounds来指定地图的视野范围。
URL接口: baidumap://map/show
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
center | 中心点 | 可选 | lat,lng (先纬度,后经度) center和bounds不可全为空 |
bounds | 图区范围 | 可选 | lat,lng,lat,lng (先纬度,后经度, 先左下,后右上) center和bounds不可全为空 |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 可选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。默认为bd09经纬度坐标。坐标类型说明。 |
traffic | 是否开启路况,目前仅查看地图和打点支持,on表示开启,off表示关闭。 | 可选 | on、off |
zoom | 地图展示的级别 | 可选 | 13 |
src | 调用来源 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
注意:地点搜索限定范围可以由bounds和zoom+center方式进行,其中bounds优先级最高。
使用示例
Intent i1 = new Intent();// 展示地图i1.setData(Uri.parse("baidumap://map/show?center=40.057406655722,116.29644071728&zoom=11&traffic=on&bounds=37.8608310000,112.5963090000,42.1942670000,118.9491260000&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/show?center=40.057406655722,116.29644071728&zoom=11&traffic=on&bounds=37.8608310000,112.5963090000,42.1942670000,118.9491260000&src=andr.baidu.openAPIdemo">展示地图</a>
显示效果如下:
2.2.2 自定义打点
调用该接口可调起Android百度地图,且在指定坐标点上显示点的名称和内容信息。
URL接口:baidumap://map/marker
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
location | 经纬度 | 必选 | lat,lng (先纬度,后经度) |
title | 打点标题 | 必选 | |
content | 打点内容 | 可选 | |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 可选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。默认为bd09经纬度坐标。坐标类型说明。 |
traffic | 是否开启路况,目前仅查看地图和打点支持,on表示开启,off表示关闭。 | 可选 | on、off |
zoom | 地图展示的级别 | 可选 | 13 |
src | 调用来源 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
// 自定义打点i1.setData(Uri.parse("baidumap://map/marker?location=40.057406655722,116.2964407172&title=Marker&content=makeamarker&traffic=on&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/marker?location=40.05740665572,116.2964407172&title=Marker&content=makeamarker&traffic=on&src=andr.baidu.openAPIdemo">自定义打点</a>
显示效果如下:
2.2.3 展示地图图区
展示地图图区,无参数。
URL接口:baidumap://map?
使用示例
Intent i1 = new Intent();// 展示地图图区i1.setData(Uri.parse("baidumap://map?src=andr.baidu.openAPIdemo"));startActivity(i1)//网页应用调起Android百度地图方式举例<a href="bdapp://map?src=andr.baidu.openAPIdemo">展示地图图区</a>
显示效果如下:
2.2.4 地址解析
调用该接口可以在调起百度地图时,在图区显示地址对应的坐标点。
URL接口: baidumap://map/geocoder
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
address | 地址名称 | 必选 | 北京市海淀区上地信息路9号奎科科技大厦 |
src | 统计来源 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 地址解析i1.setData(Uri.parse("baidumap://map/geocoder?src=andr.baidu.openAPIdemo&address=北京市海淀区上地信息路9号奎科科技大厦"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/geocoder?src=andr.baidu.openAPIdemo&address=北京市海淀区上地信息路9号奎科科技大厦">地址解析</a>
显示效果如下:
2.2.5 反向地址解析
调用该接口可调起百度地图,经过逆地理编码后,以标注形式显示位置和地址信息。
URL接口: baidumap://map/geocoder
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
location | 经纬度 | 必选 | lat,lng (先纬度,后经度) |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 可选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。默认为bd09经纬度坐标。坐标类型说明。 |
zoom | 地图展示的级别 | 可选 | 13 |
src | 调用来源 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 反向地址解析i1.setData(Uri.parse("baidumap://map/geocoder?location=39.98871,116.43234&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/geocoder?location=39.98871,116.43234&src=andr.baidu.openAPIdemo">反向地址解析</a>
显示效果如下:
2.3 搜索功能
2.3.1 POI搜索
根据给定的关键字、检索条件进行检索。
URL接口:baidumap://map/place/search
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
query | 关键词 | 必选 | |
region | 城市名或县名 | 选择方式: 地点搜索限 定范围可以由region、 bounds和location + radius方式进行,其中 bounds优先级最高、 region优先级最低。 | |
location | 中心点经纬度,或中心点经纬度和名称描述,注意,名称不参与检索,只负责显示。 | 同上 | 经纬度: 39.9761,116.3282 经纬度和名称: latlng:39.9761,116.3282|name: 中关村 (注意:坐标先纬度,后经度) |
bounds | 视野范围 | 同上 | lat,lng ,lat,lng (先纬度,后经度, 先左下,后右上) |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 可选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。默认为bd09经纬度坐标。坐标类型说明。 |
redius | 检索半径,单位:m | ||
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
注意:
1、地点搜索限定范围可以由region、bounds和location+radius方式进行,其中bounds优先级最高、region优先级最低(与web服务保持一致)。
2、如果参数内含bounds或location+radius,则发起的搜索是AreaSearch,如果不含,则为OneSearch搜索。
使用示例
Intent i1 = new Intent();// POI搜索i1.setData(Uri.parse("baidumap://map/place/search?query=美食®ion=beijing&location=39.915168,116.403875&radius=1000&bounds=37.8608310000,112.5963090000,42.1942670000,118.9491260000&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/place/search?query=美食®ion=beijing&location=39.915168,116.403875&radius=1000&bounds=37.8608310000,112.5963090000,42.1942670000,118.9491260000&src=andr.baidu.openAPIdemo">POI搜索</a>
显示效果如下:
2.3.2 路线规划
公交、驾车、步行、骑行路线规划
URL接口:baidumap://map/direction
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
origin | 起点名称和经纬度,可同时提供名称和经纬度,也可以只提供起点名称和经纬度中的一项。 | 必选 | latlng:39.98871,116.43234 (注意:坐标先纬度,后经度) 仅名称:天安门 仅经纬度:39.98871,116.43234 注意:仅有名称的情况下,请不要带“name:”,只需要origin=“起点名称” |
origin_uid | 起点uid | 可选 | 示例如:6f6241e3c05ab1a093114c5e |
destination | 终点名称和经纬度,同时提供名称和经纬度,导航终点引导更精准,体验更优。也可以只提供终点名称和经纬度中的一项。 | 必选 | latlng:39.98871,116.43234 (注意:坐标先纬度,后经度) 仅名称:天安门 仅经纬度:39.98871,116.43234 注意:仅有名称的情况下,请不要带“name:”,只需要destination=“终点名称” |
destination_uid | 终点uid | 可选 | 终点POI ID,可通过百度地图地点搜索接口得到,有uid参数终点会以出入口作为结束导航位置,体验更优。示例如:6f6241e3c05ab1a093114c5e |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 必选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。坐标类型说明。 |
mode | 导航模式, 可选transit(公交)、 driving(驾车)、 walking(步行)和riding(骑行) 默认:driving | 可选 | |
region | 城市名或县名 | 可选 | |
origin_region | 起点所在城市或县 | 可选 | |
sy | 公交检索策略,只针对mode字段填写transit情况下有效,值为数字。 0:推荐路线 2:少换乘 3:少步行 4:不坐地铁 5:时间短 6:地铁优先 | 可选 | |
index | 公交结果结果项,只针对公交检索,值为数字,从0开始 | 可选 | |
target | 0 图区,1 详情,只针对公交检索有效 | 可选 | 默认0 |
car_type | 驾车路线规划类型 | 可选 | BLK:躲避拥堵(自驾); TIME:最短时间(自驾); DIS:最短路程(自驾); FEE:少走高速(自驾); HIGHWAY:高速优先; DEFAULT:推荐(自驾,地图app不选择偏好); 默认:地图app所选偏好 |
viaPoints | 途经点参数,内容为json格式,需要把内容encodeURIComponent后拼接到url中。 | 可选 | |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
注意:
1、direction?region=北京&origin=39.98871,116.43234&destination=40.055878,116.307854mode=transit&index=0&target=1 index=0&target=1 加了这两个,进入某条线路的详情或图区,现在用于到站提醒调起特定线路。已经有index的情况下,target不填就是默认0;
2、仅仅发起检索,跳到搜索结果页, index, target则不是必须的;
1)公交路线规划示例:Intent i1 = new Intent();// 公交路线规划i1.setData(Uri.parse("baidumap://map/direction?origin=name:对外经贸大学|latlng:39.98871,116.43234&destination=西直门&coord_type=bd09ll&mode=transit&sy=3&index=0&target=1&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/direction?origin=name:对外经贸大学|latlng:39.98871,116.43234&destination=西直门&coord_type=bd09ll&mode=transit&sy=3&index=0&target=1&src=andr.baidu.openAPIdemo">公交路线规划</a>
显示效果如下:
2)驾车路线规划示例:Intent i1 = new Intent();// 驾车路线规划i1.setData(Uri.parse("baidumap://map/direction?region=beijing&origin=39.98871,116.43234&destination=西直门&coord_type=bd09ll&mode=driving&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/direction?region=beijing&origin=39.98871,116.43234&destination=西直门&coord_type=bd09ll&mode=driving&src=andr.baidu.openAPIdemo">驾车路线规划</a>
显示效果如下:
3)步行路线规划示例:Intent i1 = new Intent();// 步行路线规划i1.setData(Uri.parse("baidumap://map/direction?region=beijing&origin=39.98871,116.43234&destination=40.057406655722,116.2964407172&coord_type=bd09ll&mode=walking&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/direction?region=beijing&origin=39.98871,116.43234&destination=40.057406655722,116.2964407172&coord_type=bd09ll&mode=walking&src=andr.baidu.openAPIdemo">步行路线规划</a>
显示效果如下:
4)骑行路线规划示例:Intent i1 = new Intent();// 骑行路线规划i1.setData(Uri.parse("baidumap://map/direction?region=beijing&origin=39.98871,116.43234&destination=40.057406655722,116.2964407172&coord_type=bd09ll&mode=riding&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/direction?region=beijing&origin=39.98871,116.43234&destination=40.057406655722,116.2964407172&mode=riding&src=andr.baidu.openAPIdemo">骑行路线规划</a>
显示效果如下:
2.3.3 公交、地铁线路查询
公交、地铁线路查询。
URL接口:baidumap://map/line
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
region | 城市名或县名 | 必选 | |
name | 线路名称 | 必选 | |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
使用示例
Intent i1 = new Intent();// 公交、地铁线路查询i1.setData(Uri.parse("baidumap://map/line?region=北京&name=909&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/line?region=北京&name=909&src=andr.baidu.openAPIdemo">公交、地铁线路查询</a>
显示效果如下:
2.3.4 附近搜索
进入附近页,搜周边页,或者直接发起周边检索。
URL接口1:baidumap://map/place/nearbyURL接口2:baidumap://map/nearbysearch<br/>两个协议头的功能和参数完全一样,因为历史遗留,两个都保留
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
center | 中心点经纬度,或中心点经纬度和名称描述,注意,名称不参与检索,只负责显示。 如果有此参数则跳转搜周边页面,否则跳转附近页 | 可选 | 经纬度:39.9761,116.3282 经纬度和名称:latlng:39.9761,116.3282|name:中关村 |
query | 检索关键字。如果有此关键字则直接发起检索 | 可选 | 例如:美食 |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 必选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。坐标类型说明。 |
radius | 检索半径,默认为5000 | 可选 | 此参数不传值,不保证服务。 |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
注意:
1、打开附近页: center和query都不传
2、打开搜周边页: 传center, 不传query
3、发起附近搜索: 传query, center可选(参照注释4)
4、如果传入center, 发起附近搜索的中心点为传入的center值,否则为定位位置。
使用示例
Intent i1 = new Intent();// 附近搜索i1.setData(Uri.parse("baidumap://map/place/nearby?query=团购&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/place/nearby?query=团购&src=andr.baidu.openAPIdemo">附近搜索</a>
显示效果如下:
2.4 导航
2.4.1 驾车导航
URL接口:baidumap://map/navi
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
location | 终点坐标点 | 可选 | 坐标类型参考通用参数:coord_type |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 必选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。坐标类型说明。 |
query | 终点名称 | 必选 | query=天安门 |
uid | 终点uid | 可选 | 终点POI ID,可通过百度地图地点搜索接口得到,有uid参数终点会以出入口作为结束导航位置,体验更优。示例如:6f6241e3c05ab1a093114c5e |
type | BLK:躲避拥堵(自驾); TIME:最短时间(自驾); DIS:最短路程(自驾); FEE:少走高速(自驾); HIGHWAY:高速优先; DEFAULT:推荐(自驾,地图app不选择偏好); 默认:地图app所选偏好 | 可选 | |
viaPoints | 途经点参数,内容为json格式,需要把内容encodeURIComponent后拼接到url中。 | 可选 | 未编码的参数内容示例如下,其中name为名称,lat为纬度,lng为经度, uid为途径点POI uid {"viaPoints":[{"name": "深圳北站","lat": 22.615108,"lng": 114.035529,"uid":"6f6241e3c05ab1a093114c5e"},{"name": "罗湖口岸","lat": 22.534663,"lng": 114.124902, "uid":"9ee392b80739c33fbbbd63f0"},{"name": "宝安国际机场", "lat":22.638172,"lng":113.821705,"uid": "b96c95640ce96627f603b8ca"}]} (uid可通过百度地图地点搜索接口得到,有uid参数途经点会以出入口 作为到达途径点时的结束导航位置,体验更优) |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
注意:带途经点的示例如下: baidumap://map/navi?query=故宫&src=andr.baidu.openAPIdemo&viaPoints={"viaPoints":[{"name":"对外外贸大学","lng":116,"lat":40}]}
使用示例
Intent i1 = new Intent();// 驾车导航i1.setData(Uri.parse("baidumap://map/navi?query=故宫&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/navi?query=故宫&src=andr.baidu.openAPIdemo">驾车导航</a>
显示效果如下:
2.4.2 骑行导航
URL接口:baidumap://map/bikenavi
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
origin | 起点坐标点 | 必选 | 经纬度:39.9761,116.3282 |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 必选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。坐标类型说明。 |
destination | 终点坐标点 | 必选 | 经纬度:39.98871,116.43234 |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
使用示例
Intent i1 = new Intent();// 骑行导航i1.setData(Uri.parse("baidumap://map/bikenavi?origin=39.98871,116.43234&destination=39.91441,116.40405&coord_type=bd09ll&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/bikenavi?origin=39.98871,116.43234&destination=39.91441,116.40405&coord_type=bd09ll&src=andr.baidu.openAPIdemo">骑行导航</a>
显示效果如下:
2.4.3 步行导航
URL接口:baidumap://map/walknavi
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
origin | 起点坐标点 | 必选 | 经纬度:39.9761,116.3282 |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 必选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。坐标类型说明。 |
destination | 终点坐标点 | 必选 | 经纬度:39.98871,116.43234 |
mode | 步行导航模式 | 必选 | 经纬度:39.98871,116.43234 |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
使用示例
Intent i1 = new Intent();// 步行导航i1.setData(Uri.parse("baidumap://map/walknavi?origin=40.057406655722,116.2964407172&destination=39.91441,116.40405&coord_type=bd09ll&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/walknavi?origin=40.057406655722,116.2964407172&destination=39.91441,116.40405&coord_type=bd09ll&src=andr.baidu.openAPIdemo">步行导航</a>
显示效果如下:
2.4.4 导航到家(公司)(map9.5.5以上版本支持)
URL接口:baidumap://map/navi/common
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
addr | 地址类型: home:家 company:公司 | 必选 | |
coord_type | 坐标类型,必选参数。 示例: coord_type= bd09ll 允许的值为: bd09ll(百度经纬度坐标) bd09mc(百度墨卡托坐标) gcj02(经国测局加密的坐标) wgs84(gps获取的原始坐标) | 必选 | 如开发者不传递正确的坐标类型参数,会导致地点坐标位置偏移。坐标类型说明。 |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 此参数不传值,不保证服务。 |
使用示例
Intent i1 = new Intent();// 导航到家i1.setData(Uri.parse("baidumap://map/navi/common?addr=home&coord_type=bd09ll&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/navi/common?addr=home&coord_type=bd09ll&src=andr.baidu.openAPIdemo">导航到家</a>
显示效果如下:
2.5 信息显示
2.5.1 POI详情显示页
根据POI的uid展示详情页。
URL接口:baidumap://map/place/detail
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
uid | POI的ID,可以通过百度地图开放平台或者百度地图SDK获取 | 必选 | |
show_type | 展现方式(7.1版本增加的协议) | 可选 | 1.detail_bar是POI图区详情页(图区带底部bar的页面) 2.detail_page是poi详情页。默认值是detail_bar,如果不带show_type参数,用默认值。 |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();//POI详情显示i1.setData(Uri.parse("baidumap://map/place/detail?uid=09185c56d24f7e44f1193763&show_type=detail_page&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/place/detail?uid=09185c56d24f7e44f1193763&show_type=detail_page&src=andr.baidu.openAPIdemo"> POI详情显示</a>
显示效果如下:
2.5.2 离线导航包
调起离线导航包下载页面,无参数。
URL接口:baidumap://map/navi/offlinemap
使用示例
Intent i1 = new Intent();//调起离线导航包下载页面i1.setData(Uri.parse("baidumap://map/navi/offlinemap?src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/navi/offlinemap?src=andr.baidu.openAPIdemo">离线导航包</a>
显示效果如下:
2.5.3 路线(出行)页面调起协议
URL接口:baidumap://map/routepage
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
type | 路线类型 | 可选 | String类型: bus 公交, car 驾车, walk 步行, ride 骑行, 默认car |
param | 额外参数 | 可选 | json格式,主要用于统计 |
action | 中转参数 | 可选 | set_home_action, set_company_action,,dig_home_action, dig_company_action。通过路线页面中转跳到某个二级页面。比如家地址认领页面 |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 路线(出行)页面调起:跳转到二级常用地址设置页面i1.setData(Uri.parse("baidumap://map/routepage?type=car&action=set_home_action&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/routepage?type=car&action=set_home_action&src=andr.baidu.openAPIdemo">路线(出行)页面调起</a>
显示效果如下:
Intent i1 = new Intent();// 路线(出行)页面调起:跳转到二级常用地址设置页面i1.setData(Uri.parse("baidumap://map/routepage?type=car&src=andr.baidu.openAPIdemo"));startActivity(i1);
显示效果如下:
2.5.4 出行早晚报
跳转出行早晚报页面
URL接口:baidumap://map/newsassistant
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
cityid | 城市id, 跳转到出行早晚报页面的城市id。如果不传则跳转到当前城市页面。 | 可选 | |
src | 统计来源 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 调起出行早晚报页面i1.setData(Uri.parse("baidumap://map/newsassistant?src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/newsassistant?src=andr.baidu.openAPIdemo">调起出行早晚报页面</a>
显示效果如下:
2.5.5 行程助手
URL接口:baidumap://map/trip
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
action | edit 跳转编辑页; 其他任意字符串, 跳行程助手主页 | 必选 | |
tripId | 行程的id, action为edit时必填 | 可选 | String类型 |
end_uid | 终点uid | 可选 | |
end_name | 终点名称 | 可选 | |
end_loc | 终点坐标 | 可选 | |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 调起行程助手主页或者编辑页i1.setData(Uri.parse("baidumap://map/trip?action=edit&tripId=去西站&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/trip?action=edit&tripId=去西站&src=andr.baidu.openAPIdemo">调起行程助手主页或者编辑页</a>
显示效果如下:
Intent i1 = new Intent();// 调起行程助手主页或者编辑页i1.setData(Uri.parse("baidumap://map/trip?action=home&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/trip?action=home&src=andr.baidu.openAPIdemo">调起行程助手主页或者编辑页</a>
显示效果如下:
2.5.6 实时公交页面(map9.5.5以上版本支持)
URL接口:baidumap://map/page/realtimebus
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
mode | 启动模式: CLEAN_MODE 启动后清除页面栈,back后退出程序; MAP_MODE 启动后清除页面栈,back回退后到住地图; NORMAL_MODE 启动后保留原有页面栈; NORMAL_MAP_MODE 如果有界面,保持栈不变,如果没有插入地图。 | 可选 | |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 打开实时公交页面i1.setData(Uri.parse("baidumap://map/page/realtimebus?mode=NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/page/realtimebus?mode=NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo">打开实时公交页面</a>
显示效果如下:
2.5.7 离线地图下载页面(map9.5.5以上版本支持)
URL接口:baidumap://map/page/offlinemap
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
mode | 启动模式: CLEAN_MODE 启动后清除页面栈,back后退出程序; MAP_MODE 启动后清除页面栈,back回退后到住地图; NORMAL_MODE 启动后保留原有页面栈; NORMAL_MAP_MODE 如果有界面,保持栈不变,如果没有插入地图。 | 可选 |
使用示例
Intent i1 = new Intent();// 离线地图下载页面i1.setData(Uri.parse("baidumap://map/page/offlinemap?mode= NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/page/offlinemap?mode= NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo">离线地图下载页面</a>
显示效果如下:
2.5.8 离线地图下载页面(map9.5.5以上版本支持)
URL接口:baidumap://map/component?comName=international&target=international_exchangerate_page
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
mode | 启动模式: CLEAN_MODE 启动后清除页面栈,back后退出程序; MAP_MODE 启动后清除页面栈,back回退后到住地图; NORMAL_MODE 启动后保留原有页面栈; NORMAL_MAP_MODE 如果有界面,保持栈不变,如果没有插入地图。 | 可选 | |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 实时汇率页面i1.setData(Uri.parse("baidumap://map/component?comName=international&target=international_exchangerate_page&mode=NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/component?comName=international&target=international_exchangerate_page&mode=NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo">实时汇率页面</a>
显示效果如下:
2.5.9 实时翻译页面
URL接口:baidumap://map/component?comName=international&target=international_translation_page
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
mode | 启动模式: CLEAN_MODE 启动后清除页面栈,back后退出程序; MAP_MODE 启动后清除页面栈,back回退后到住地图; NORMAL_MODE 启动后保留原有页面栈; NORMAL_MAP_MODE 如果有界面,保持栈不变,如果没有插入地图。 | 可选 | |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();// 实时翻译页面i1.setData(Uri.parse("baidumap://map/component?comName=international&target=international_translation_page&mode=NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/component?comName=international&target=international_translation_page&mode=NORMAL_MAP_MODE&src=andr.baidu.openAPIdemo">实时翻译页面</a>
显示效果如下:
2.5.10 电子狗
调用该接口,可以调起百度地图的电子狗功能,无参数。
URL接口:baidumap://map/navi/cruiser
使用示例
Intent i1 = new Intent();//调起地图电子狗功能i1.setData(Uri.parse("baidumap://map/navi/cruiser?src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/navi/cruiser?src=andr.baidu.openAPIdemo">电子狗</a>
显示效果如下:
2.5.11 路况页面调起协议
调用该接口,可以查看到达终点的路况情况。
URL接口:baidumap://map/traffic?keyword=xxx&playMode=0&resetVoiceMode=0
参数说明
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
keyword | 路名 | 必选 | 中关村 |
playMode | 选择是否需要小度播报路况 | 可选 | 默认打开:1为打开,0位关闭 |
resetVoiceMode | 路线结果页是否需要多轮二次询问 | 可选 | 默认打开:1为打开,0位关闭 |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();//调起路况页面协议i1.setData(Uri.parse("baidumap://map/traffic?keyword=中关村&playMode=0&resetVoiceMode=0&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/traffic?keyword=中关村&playMode=0&resetVoiceMode=0&src=andr.baidu.openAPIdemo">调起路况页面</a>
显示效果如下:
2.6 标准组件
2.6.1 AR识楼
URL接口:baidumap://map/component?comName=mapbasear&target=show_arexplore_page
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
comName | 组件名称 | 必选 | 固定传mapbasear |
target | 调起目标 | 必选 | 固定传show_arexplore_page |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();//调起标准组件,AR识楼i1.setData(Uri.parse("baidumap://map/component?comName=mapbasear&target=show_arexplore_page&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/component?comName=mapbasear&target=show_arexplore_page&src=andr.baidu.openAPIdemo">调起地图AR识楼</a>
显示效果如下:
2.6.2 地铁图
调用该接口,可以调起进入地铁路首页
URL接口:baidumap://map/component?target=subway_page_openapi&comName=subway
参数名称 | 参数说明 | 是否必选 | 备注 |
---|---|---|---|
target | 组件target | 必选 | target=subway_page_openapi |
comName | 组件名 | 必选 | comName=subway |
src | 调用来源,规则:webapp.companyName.appName。 | 必选 | 参数格式为:andr.companyName.appName 不传此参数,不保证服务 |
使用示例
Intent i1 = new Intent();//进入地铁路首页i1.setData(Uri.parse("baidumap://map/component?target=subway_page_openapi&comName=subway&src=andr.baidu.openAPIdemo"));startActivity(i1);//网页应用调起Android百度地图方式举例<a href="bdapp://map/component?target=subway_page_openapi&comName=subway&src=andr.baidu.openAPIdeamo">调起地铁图首页</a>
显示效果如下:
上一篇
下一篇
本篇文章对您是否有帮助?