Android MapBox MatchingОтзывы о направленииНаправление проблемы - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь сделать внутреннюю навигацию, используя сопоставление mapbox с координатами из openrouteservice.У меня проблема, при использовании NavigationRoute все работает, но я должен использовать MapboxMapMatching.Вот мой код

private DirectionsRoute currentRoute;
MapboxMapMatching.builder()
    .accessToken(Mapbox.getAccessToken())
    .coordinates(list_wayPoint)
    .waypoints(0, list_wayPoint.size() - 1)
    .profile(DirectionsCriteria.PROFILE_CYCLING)
    .build()
    .enqueueCall(new Callback<MapMatchingResponse>() {
        @Override public void onResponse(Call<MapMatchingResponse> call, Response<MapMatchingResponse> response) {
        if (response.isSuccessful()) {
              currentRoute = response.body().matchings().get(0).toDirectionRoute();
              Log.i("debug", "" + currentRoute);
              if (navigationMapRoute != null)
                  navigationMapRoute.removeRoute();
              else
                  navigationMapRoute = new NavigationMapRoute(null, mapView, map, R.style.NavigationMapRoute);
            navigationMapRoute.addRoute(currentRoute);
        } else
            showAlertDialog("Warning: " + response.message());
        }
        @Override public void onFailure(Call<MapMatchingResponse> call, Throwable t) {
            showAlertDialog("Warning: " + t.getMessage());
        }
    });

Но, когда я пытаюсь, он вылетает, давая мне java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 в строке navigationMapRoute.addRoute(currentRoute);

Вот текущийRoute ответ от MapMatchingResponse

Что-то не так в моем коде?

...