ЗДЕСЬ Api - Другой результат маршрута с использованием iOS / Android SDK и REST API

У меня проблема с маршрутизацией и грунтовой дорогой при использовании мобильного SDK. Маршрут рассчитывается с использованием следующего параметра с REST api:

атрибуты маневрирования: "направление, действие"
режим: "самый быстрый; автомобиль; грязьRoad: -3, boatFerry: 0"
представление: "отображение"
атрибуты маршрута: "путевые точки, сводка, форма, этапы "
waypoint0:" 37.277430,13.572681 "
waypoint1:" 37.287706,13.817110 "
waypoint2:" 37.276359,14.097211 "
waypoint3:" 37.316294,14.130108 "
waypoint4 : "37.368569,14.334077"
waypoint5: "37.238077,14.512665"
waypoint6: "37.230885,14.538092"
waypoint7: "37.181701,14.772583"
waypoint8: "37.162439,14.751674"
waypoint9: "37.041651,14.795221"
waypoint10: "36.926747,14.747216"
waypoint11: "36.885887,14.686213"
waypoint12: "36.837361,14.606543"

вот пример (замените идентификатор и код вашего приложения):

https://route.api.here.com/routing/7.2/calculateroute.json?waypoint0=37.277430%2C13.572681&waypoint1=37.287706%2C13.817110&waypoint2=37.276359%2C14.097211&waypoint3=37.316294%2C14.130108&waypoint4=37.368569%2C14.334077&waypoint5=37.238077%2C14.512665&waypoint6=37.230885%2C14.538092&waypoint7=37.181701%2C14.772583&waypoint8=37.162439%2C14.751674&waypoint9=37.041651%2C14.795221&waypoint10=36.926747%2C14.747216&waypoint11=36.885887%2C14.686213&waypoint12=36.837361%2C14.606543&mode=fastest%3Bcar%3Btraffic%3Aenabled%3BdirtRoad%3A-3&app_id=<YOUR APP ID>&app_code=<YOUR APP CODE>&departure=now

Маршрут будет таким же, если я установлю dirtRoad:0 или dirtRoad:-3

Используя мобильный SDK (iOS или Android), я получаю следующую ошибку, и маршрут не рассчитывается:

"NMARoutingErrorViolatesOptions"

Я передаю следующие параметры (с теми же путевыми точками, которые использовались в примере REST) ​​в NMACoreRouter.calculateRoute() (в iOS в качестве примера)

let routingMode = NMARoutingMode()
routingMode.transportMode = .car
routingMode.routingType = .fastest
routingMode.routingOptions = NMARoutingOption.avoidDirtRoad;

при удалении NMARoutingOption.avoidDirtRoad маршрут рассчитывается, но при этом я думаю, что грунтовые дороги включены в маршрут. Это ошибка? Или вариант iOS NMARoutingOption.avoidDirtRoad отличается от REST dirtRoad:-3? Как я могу получить стабильный результат на обеих платформах?


person user10986164    schedule 22.08.2019    source источник
comment
@HEREDeveloperSupport, вы можете мне помочь?   -  person user10986164    schedule 02.09.2019


Ответы (1)


В целом алгоритм и данные базовой карты, используемые HERE Routing REST API и HERE Mobile SDK, различаются, поэтому всегда могут быть различия в форме маршрута. Циклы обновления карты HERE Routing REST API и HERE Mobile SDK также немного отличаются (еженедельно и ежемесячно), и, к сожалению, обойти это невозможно.

person HERE Developer Support    schedule 24.01.2020