平行路检测 最后更新时间: 2026年05月29日
平行路检测支持“主辅路状态检测”和“高架桥上下状态检测”。当用户所在的位置,具有两条相邻的平行路,如城市快速路的主干道和辅路,绕城高架的桥上和桥下,会收到ParallelRoadListener的回调,表明目前是支持用户自行切换平行路来触发重算的。
比如AMapNaviParallelRoadStatus.mParallelRoadStatusFlag为1,表明SDK认为目前自车位置是在主路,如果用户当前确实是在主路,用户就无需做任何动作,如果用户当前是在辅路,那么表明SDK的推测是错的,用户可以点击在主路按钮来切换到辅路。
/**
* 道路切换回调类
*/
export class AMapNaviParallelRoadStatus implements IAMapNaviParallelRoadStatus {
STATUS_NONE: number = 0;
STATUS_MAIN_ROAD: number = 1;
STATUS_SIDE_ROAD: number = 2;
mParallelRoadStatusFlag: number = 0;
mElevatedRoadStatusFlag: number = 0;
status: number = 0;
/**
* 主辅路标识(默认0)
* 0:无主辅路(车标所在道路旁无主辅路)
* 1:车标在主路(车标所在道路旁有辅路)
* 2:车标在辅路(车标所在道路旁有主路)
*
*/
public getmParallelRoadStatusFlag(): number {
return this.mParallelRoadStatusFlag;
}
/**
* 高架上下标识(默认0)
* 0:无高架
* 1:车标在高架上(车标所在道路有对应高架下)
* 2:车标在高架下(车标所在道路有对应高架上)
*
*/
public getmElevatedRoadStatusFlag(): number {
return this.mElevatedRoadStatusFlag;
}
/**
* 道路切换切换状态
* 0:非路线切换期间
* 1:道路切换期间
*
*/
public getStatus(): number {
return this.status;
}
}开发者可以根据回调返回的值提供对应的操作界面,调用AMapNaviCoreManager 的如下函数来让用户切换平行路:
/**
* 切换平行路
*
* @param type 类型
* <li>1:主辅路切换</li>
* <li>2:高架桥上下切换</li>
*/
public switchParallelRoad(type: number): void {
AMapNaviNative.nativeSwitchParallelRoad(type);
}
操作界面可以参考下图:





