use of androidx.car.app.navigation.NavigationManagerCallback in project Osmand by osmandapp.
the class NavigationService method setCarContext.
/**
* Sets the {@link CarContext} to use while the service is running.
*/
public void setCarContext(@Nullable CarContext carContext) {
this.carContext = carContext;
if (carContext != null) {
this.tripHelper = new TripHelper(getApp());
this.navigationManager = carContext.getCarService(NavigationManager.class);
this.navigationManager.setNavigationManagerCallback(new NavigationManagerCallback() {
@Override
public void onStopNavigation() {
getApp().stopNavigation();
}
@Override
public void onAutoDriveEnabled() {
CarToast.makeText(carContext, "Auto drive enabled", CarToast.LENGTH_LONG).show();
OsmAndLocationSimulation sim = getApp().getLocationProvider().getLocationSimulation();
RoutingHelper routingHelper = getApp().getRoutingHelper();
if (!sim.isRouteAnimating() && routingHelper.isFollowingMode() && routingHelper.isRouteCalculated() && !routingHelper.isRouteBeingCalculated()) {
sim.startStopRouteAnimation(null);
}
}
});
// Uncomment if navigating
// mNavigationManager.navigationStarted();
} else {
this.navigationManager = null;
}
}
Aggregations