{"version":"0.1.0","code":"0000","result":true,"message":"处理成功","errdetail":"","timestamp":1671516343328,"data":{"id":71712058,"title":"5.4.3.12 高速服务区","slug":"lzg4sp","format":"lake","bookId":26046811,"body":null,"body_draft":null,"body_html":"

场景图

导航引导过程中,透出前方的服务区(SAPA)和收费站信息。

\"image.png\"


\"image.png\"

时序图

关键参数

public final class NaviFacilityType {\n    public static final int NaviFacilityTypeServiceArea = 0; \t// 服务区\n    public static final int NaviFacilityTypeTollGate = 1; \t\t// 收费站\n    public static final int NaviFacilityTypeCheckPoint = 2;\t\t// 检查站\n}

核心接口

void com.autonavi.gbl.guide.observer.INaviObserver.onUpdateSAPA(ArrayList<NaviFacility> serviceAreaList)
long com.autonavi.gbl.guide.GuideService.obtainSAPAInfo(boolean isfindRemainPath)

需要开始导航后才能请求

     isfindRemainPath  = True: 查询剩余路线上的服务区和收费站,False: 只查询当前车辆所在高速路段上的服务区和收费站(要求当前车辆需要在高速上)

void com.autonavi.gbl.guide.observer.INaviObserver.onObtainSAPAInfo(SAPAInquireResponseData respData)

说明:函数详情,请复制函数名称到在线API搜索

示例代码

INaviObserver naviObserver = new INaviObserver() {\n\t@Override\n\tpublic void onUpdateSAPA(ArrayList<NaviFacility> arrayList) {\n\t    for (NaviFacility facility : arrayList){\n\t        int type = facility.type; // 类型\n\t        int remainDist = facility.remainDist; //到当前车位的剩余距离\n\t        String name = facility.name; // 服务区名称\n\t        long sapaDetail = facility.sapaDetail;//服务区详细信息:按位标识(0-没有,1-有),见 SapaDetailType\n\t        short payTip = facility.payTip; //支持的付款方式:按位标识, 默认:0x00, 支付宝: 0x01\n\t        // todo: HMI绘制到卡片上\n\t        // ...\n\t    }\n\t}\n};
// 请求服务区信息\n// 发起请求,返回请求ID\nlong iReqId = mGuideService.obtainSAPAInfo(true);\n...
INaviObserver naviObserver = new INaviObserver() {\n    @Override\n    public void onObtainSAPAInfo(SAPAInquireResponseData respData) {\n    \tif (respData == null) return;\n\n        long reqID = respData.requestID; //请求ID\n        if (respData.serviceAreaInfo != null) {\n            naviFacilities = respData.serviceAreaInfo.serviceAreaList;\n            // serviceAreaInfo.remainServiceAreaNum) // 剩余服务区个数\n            // serviceAreaInfo.remainFreewayDistance) // 剩余高速里程  (当前自车位到查询的最后一段高速的里程总和,单位米)\n            // serviceAreaInfo.remainFreewayTime);// 剩余高速时间  (当前自车位到查询的最后一段高速的时间总和,单位秒)\n        }\n\n        // SAPA信息列表\n        // SAPA信息个数\n        int size = naviFacilities.size();\n        for (int i = 0; i < size; i++) {\n            // 服务区信息item\n            NaviFacility item = naviFacilities.get(i);\n            // 服务区item坐标\n            Coord2DDouble pos = item.pos;\n        }\n        // todo ...HMI绘制在UI上\n    }\n    ...\n};



","body_lake":null,"pub_level":null,"status":"0","updated_at":"2022-04-06 07:03:24","deleted_at":null,"nameSpace":"mnlcaa/v610","browseCount":161,"collectCount":0,"estimateDate":6,"docStatus":0,"permissions":true,"overView":false}}