Android 导航SDK的智能巡航无法回调数据原因是什么?

智能巡航的提供了三种巡航模式

  • CAMERA_DETECTED, 巡航时返回电子眼信息。

  • SPECIALROAD_DETECTED, 巡航时返回特殊道路设施信息。

  • CAMERA_AND_SPECIALROAD_DETECTED,巡航时返回电子眼和特殊道路设施信息。

要想回调相关的数据必须满足相应的条件:

1、连续5个点速度大于15km/h后触发 updateAimlessModeStatistics 回调,通过 AimLessModeStat 对象可获取巡航的连续行驶距离连续启用时间


@Override
public void updateAimlessModeStatistics(AimLessModeStat aimLessModeStat){ 
   Toast.makeText(this, "看log", Toast.LENGTH_SHORT).show();  
   Log.d(TAG, "distance=" + aimLessModeStat.getAimlessModeDistance());
   Log.d(TAG, "time=" + aimLessModeStat.getAimlessModeTime());
 }



2、在巡航过程中,出现拥堵长度大于500米且拥堵时间大于5分钟时,会进到 updateAimlessModeCongestionInfo 回调中,通过 AimLessModeCongestionInfo 对象,可获取到道路拥堵信息(如:导致拥堵的事件类型、拥堵的状态等)。


@Override
public void updateAimlessModeCongestionInfo(AimLessModeCongestionInfo aimLessModeCongestionInfo){
    Toast.makeText(this, "看log", Toast.LENGTH_SHORT).show();
    Log.d(TAG, "roadName=" + aimLessModeCongestionInfo.getRoadName());
    Log.d(TAG, "CongestionStatus=" + aimLessModeCongestionInfo.getCongestionStatus()); 
    Log.d(TAG, "eventLonLat=" + aimLessModeCongestionInfo.getEventLon() + "," + aimLessModeCongestionInfo.getEventLat());   
    Log.d(TAG, "length=" + aimLessModeCongestionInfo.getLength()); 
    Log.d(TAG, "time=" + aimLessModeCongestionInfo.getTime());
    for (AMapCongestionLink link :    aimLessModeCongestionInfo.getAmapCongestionLinks()) {       
    Log.d(TAG, "status=" + link.getCongestionStatus());
             for (NaviLatLng latlng : link.getCoords()) {  
                       Log.d(TAG, latlng.toString());  
                       
        }   
    }
}



3、在巡航过程中,出现特殊道路设施(如:测速摄像头、测速雷达;违章摄像头;铁路道口;应急车道等等)时,回进到 OnUpdateTrafficFacility(AMapNaviTrafficFacilityInfo[] infos),通过 AMapNaviTrafficFacilityInfo  对象可获取道路交通设施信息。


@Override
public void OnUpdateTrafficFacility(AMapNaviTrafficFacilityInfo[] aMapNaviTrafficFacilityInfos){ 
   for (AMapNaviTrafficFacilityInfo info :   aMapNaviTrafficFacilityInfos) {
           Toast.makeText(this, "(trafficFacilityInfo.coor_X+trafficFacilityInfo.coor_Y+trafficFacilityInfo.distance+trafficFacilityInfo.limitSpeed):" + (info.getCoorX() + info.getCoorY() + info.getDistance() + info.getLimitSpeed()),Toast.LENGTH_LONG).show();  
     }        
 }



如以上内容仍未解决您的问题,请创建工单
新用户
福利
示例
中心
常见
问题
智能
客服