路径规划可根据起点、终点、途径点的经纬度以及POI ID,给用户提供出行路线。路径规划成功后得到1~3条路线信息,根据路线信息可以在地图上进行位置标注、绘制路线等操作。 发起路径规划方法如下,
//发起驾车导航路线规划
carNavManager.searchRoute(start, dest, waypoints, option,
new TencentRouteSearchCallback() {
@Override
public void onRouteSearchFailure(int code, String msg) {
// 算路失败需查看具体的error code类型
}
@Override
public void onRouteSearchSuccess(ArrayList<RouteData> arrayList) {
// 若算路成功,可通过result获得路线数据,通过地图SDK绘制路线
}
});
路径规划参数如下面表格所示:
| 参数 | 类型 | 是否必填 | 说明 | |
|---|---|---|---|---|
| dest | NaviPoi | 是 | 路径规划终点,一般使用检索接口获取 | |
| mLatitude | double | 是 | 纬度坐标 | |
| mLongitude | double | 是 | 经度坐标 | |
| mPoiId | Striing | 否 | 终点POI ID(可通过腾讯位置服务地点搜索服务得到),当目的地为较大园区、小区时,会以引导点作为终点(如出入口等),体验更优。 该参数优先级高于坐标,但是当目的地无引导点数据或POI ID失效时,仍会使用坐标作为终点 |
|
| mPoiName | String | 否 | 终点的名称 | |
| start | NaviPoi | 是 | 路径规划起点,一般使用当前定位点赋值 | |
| mLatitude | double | 是 | 纬度坐标 | |
| mLongitude | double | 是 | 经度坐标 | |
| uid | Striing | 否 | 该地点的唯一标识,即poi id。解释同下方终点的uid | |
| waypoints | ArrayList< NaviPoi > | 否 | 途经点数组,最多设置16个。 路线规划按照数组的顺序进行,不会按路径最短原则进行调整途经点到达顺序。 |
|
| searchOptions | CarRouteSearchOptions | 是 | 路线规划策略 | |
| mAvoidTollEnabled | boolean | 否 | 是否避开收费站,默认为NO | |
| mAvoidHighwayEnabled | boolean | 否 | 是否避开高速公路,默认为NO | |
| mAvoidCongestionEnabled | boolean | 否 | 是否避开拥堵,默认为NO | |
| highway | boolean | 否 | 是否优先高速,默认为NO | |
| shortTime | boolean | 否 | 是否优先时间短路线,默认为NO | |
| bigRoad | boolean | 否 | 是否优先大路,默认为NO | |
| mNaviScene | int | 是 | 0: 普通导航;1:接驾;2:送驾。 网约车场景下务必传递接送驾参数,可提升导航终点的准确性 |
|
| mLicenseNumber | Striing | 否 | 车牌号。路径规划会根据车牌号进行限行区域避让 | |
| preLocations | List |
否 | 前序点。最好传入路线规划之前最新的50个定位点,以提高起点的准确性。 定位信息有一定的误差,所以通过历史定位点去判断起点位置会更加准确 |
|
| 参数 | 类型 | 说明 |
|---|---|---|
| errorCode | String | 算路失败错误码,具体见下 |
| errorMsg | String | 算路失败错误描述 |
| routes | ArrayList |
算路的路线数据,包含1~3条路线 |
每条路线RouteData 包含数据如下:
| 参数 | 类型 | 说明 |
|---|---|---|
| mRecommendMsg | String | 推荐该路线的理由 |
| routeId | String | 路线id |
| mDistance | int | 路线总距离,单位:米 |
| mTime | int | 总预计时间. 单位,分钟 |
| mRoutePoints | List |
路线点串数据, 可以用地图SDK绘制路线 |
| mTrafficItems | ArrayList |
路况数据,可以用地图SDK绘制路线的时候加上路况颜色 |
| toWayPointInfos | ArrayList |
途经点信息 |
| segments | ArrayList |
路线分段信息 |
错误信息类列表如下,
errCode = 1001, //< 网络错误
errCode = 1002, //< 手机无网络
errCode = 1003, //< 请求超时
errCode = 2001, //< 返回数据无效
errCode = 2002, //< 起终点参数错误
errCode = 2003, //< 途经点参数错误
errCode = 2004, //< 吸附失败
errCode = 2005, //< 算路失败
errCode = 2006, //< 鉴权失败
errCode = 2007, //< 点串导航时参数不合法
errCode = 2999, //< 服务器内部错误
有帮助
没帮助