Кажется, в Here Android SDK API нет решения "из коробки", но в любом случае вы можете использовать обходной путь и получить оценку трафика через Routing REST API. Например, для Автомобильный маршрут от A до B запрос типа:
https://route.api.here.com/routing/7.2/calculateroute.json?waypoint0=52.5160%2C13.3779&waypoint1=52.5206%2C13.3862&mode=fastest%3Bcar%3Btraffic%3Aenabled&app_id=devportal-demo-20180625&app_code=9v2BkviRwi9Ot26kp2IysQ&departure=now
вы получили ответ с тегами "length"
и "travelTime"
для каждой ноги, например:
...
"length": 953,
"travelTime": 316,
...
и вы можете рассчитать скорость = длина.значение / путешествия.время. Также вы можете использовать сводку ответов "distance"
и "trafficTime"
для всего маршрута:
...
"summary": {
"distance": 953,
"trafficTime": 316,
...
Подход для цветовой части маршрута, описанной в ответе на на этот вопрос:
Вы можете извлечь геометрию маршрута, чтобы получить список GeoCoordinates
составляющий полилинию:
geoCoordinates = mapRoute.getRoute().getRouteGeometry()
Затем вы можете нарисовать части маршрута в различных цветах, построив
новые полилинии из этих координат:
GeoPolyline geoPolyline = new GeoPolyline();
for (GeoCoordinates point : geoCoordinates) {
if (<your condition>){
geoPolyline.add(point);
}
}
MapPolyline mapPolyline = new MapPolyline(geoPolyline);
mapPolyline.setLineColor(<color>);
map.addMapObject(mapPolyline)
от Teriblus и этот комментарий:
... Это очень хорошо работает, если просто нарисовать другой маршрут между
точки, которые мне нужны, и я могу контролировать, какой объект маршрута я отображаю на
карта с кнопкой и для навигации я использую тот же маршрут. ...