Ошибка расчета маршрута и имитации изменения маршрута

Я использую образец Android SDK Skobbler (загруженный отсюда) для написания навигационного приложения, оно отлично работает, если я запускаю приложение из Android Studio, но когда я устанавливаю приложение с использованием сгенерированного APK, обычно происходит сбой при расчете маршрута и в журналах все, что я получаю, это:

06-04 10:09:43.435    6285-6285/com.skobbler.sdkdemo D/SKMaps﹕ SKMapSurfaceView----@setZoom  11.0
06-04 10:09:43.435    6285-6285/com.skobbler.sdkdemo D/SKMaps﹕ SKMapSurfaceView---- centerMapOnPosition [101.6156902,3.0311728]
06-04 10:09:43.435    6285-6285/com.skobbler.sdkdemo D/SKMaps﹕ SKRouteManager---- @clearAllRoutesFromCache
06-04 10:09:43.436    6285-6285/com.skobbler.sdkdemo D/SKMaps﹕ SKRouteManager---- @calculateRoute SKRouteSettings [startCoordinate=[101.6156902,3.0311728], destinationCoordinate=[101.6156,3.03496], routeMode=CAR_FASTEST, alternativeRouteModes=null, routeConnectionMode=HYBRID, downloadRouteCorridor=true, routeCorridorWidthInMeters=2000, waitForCorridorDownload=false, destinationIsPoint=true, tollRoadsAvoided=false, highWaysAvoided=false, avoidFerries=false, noOfRoutes=1, countryCodesReturned=false, extendedPointsReturned=false, viaPoints=null, useRoadSlopes=false, exposeRoute=true, filterAlternatives=false, requestAdvices=true, bicycleWalk= false, bicycleCarryAvoided= false]
06-04 10:09:43.437    6285-6285/com.skobbler.sdkdemo D/SKMaps﹕ SKRouteManager----@clearCurrentRoute
06-04 10:09:43.437    6285-6285/com.skobbler.sdkdemo D/SkobblerNG﹕ clear route
06-04 10:09:43.437    6285-6285/com.skobbler.sdkdemo D/SkobblerNG﹕ clear route final
06-04 10:09:43.439    6285-6285/com.skobbler.sdkdemo D/SKMaps﹕ SKUtils----Return calculated device type HIGH
06-04 10:09:43.440    6285-6285/com.skobbler.sdkdemo D/SKMaps﹕ SKRouteManager---- Calculate route setroute SKRouteSettings [startCoordinate=[101.6156902,3.0311728], destinationCoordinate=[101.6156,3.03496], routeMode=CAR_FASTEST, alternativeRouteModes=null, routeConnectionMode=HYBRID, downloadRouteCorridor=true, routeCorridorWidthInMeters=2000, waitForCorridorDownload=false, destinationIsPoint=true, tollRoadsAvoided=false, highWaysAvoided=false, avoidFerries=false, noOfRoutes=1, countryCodesReturned=false, extendedPointsReturned=false, viaPoints=null, useRoadSlopes=false, exposeRoute=true, filterAlternatives=false, requestAdvices=true, bicycleWalk= false, bicycleCarryAvoided= false]
06-04 10:09:43.440    6285-6285/com.skobbler.sdkdemo D/SkobblerNG﹕ Java_com_skobbler_ngx_routing_SKRouteManager_setroute
06-04 10:09:43.440    6285-6285/com.skobbler.sdkdemo D/SkobblerNG﹕ No Via points added to the route
06-04 10:09:43.442    6285-6285/com.skobbler.sdkdemo D/SkobblerNG﹕ Java_com_skobbler_ngx_routing_SKRouteManager_setroute final
06-04 10:09:43.445    6285-6344/com.skobbler.sdkdemo D/SKMaps﹕ SKRouteManager---- @onRouteCalculationFailed called  with SKRoutingErrorCode =ROUTE_CANNOT_BE_CALCULATED
06-04 10:09:43.447    6285-6344/com.skobbler.sdkdemo W/SKMaps﹕ SKRouteManager---- @onAllRoutesCompleted called

Кроме того, есть ли способ симулировать перенаправление при использовании навигации в SKNavigationType.SIMULATION Режим? Я пытался явно изменить текущее местоположение пользователя внутри onCurrentPositionUpdate(SKPosition currentPosition) такой метод, но он не работает:

@Override
public void onCurrentPositionUpdate(SKPosition currentPosition) {
    iteration++;

    this.currentPosition = currentPosition;
    if (mapView != null) {

        if(iteration >= 5) {
            Toast.makeText(MapActivity.this, "Changed location", Toast.LENGTH_LONG).show();
            this.currentPosition = new SKPosition();
            this.currentPosition.setCoordinate(new SKCoordinate(101.618133, 3.025863));
        }

        mapView.reportNewGPSPosition(this.currentPosition);
    }
}

1 ответ

Решение

Для имитации перенаправления необходимо использовать метод blockRoad из SKNavigationManager. Пожалуйста, проверьте документ здесь: http://developer.skobbler.ro/docs/android/com/skobbler/ngx/navigation/SKNavigationManager.html

Другие вопросы по тегам