Ustawianie miejsca docelowego pojazdu
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
W tej sekcji znajdziesz informacje o tym, jak ustawić cel podróży pojazdu po tym, jak serwer dopasuje przejazd do pojazdu.
Zanim zaczniesz
Aby wypełnić tę sekcję, musisz wykonać te czynności:
Ustawianie miejsca docelowego w aplikacji dla kierowców
Po sparowaniu klienta z kierowcą musisz skonfigurować miejsce docelowe przejazdu w aplikacji kierowcy, wykonując te czynności:
Pobierz miejsce docelowe pojazdu z kolekcji punktów pośrednich w Fleet Engine, która jest zwracana przez GetTrip()
, UpdateTrip()
i GetVehicle()
.
Ustaw miejsce docelowe, wywołując metodę pakietu Navigation SDK na Androida
setDestination()
.
Poniższe przykłady pokazują, jak ustawić miejsce docelowe w aplikacji dla kierowców.
Java
private void navigateToLocation(LatLng locationLatLng, RoutingOptions routingOptions) {
Waypoint destination = Waypoint.newBuilder().setLocation(locationLatLng).build();
// Create a future to await the result of the asynchronous navigator task.
ListenableResultFuture<Navigator.RouteStatus> pendingRoute =
mNavigator.setDestination(destination, travelMode);
// Define the action to perform when the SDK has determined the route.
pendingRoute.setOnResultListener(
new ListenableResultFuture.OnResultListener<Navigator.RouteStatus>() {
@Override
public void onResult(Navigator.RouteStatus code) {
switch (code) {
case OK:
// Hide the toolbar to maximize the navigation UI.
if (getActionBar() != null) {
getActionBar().hide();
}
// Enable voice audio guidance (through the device speaker).
mNavigator.setAudioGuidance(
Navigator.AudioGuidance.VOICE_ALERTS_AND_GUIDANCE);
// Simulate vehicle progress along the route for demo/debug builds.
if (BuildConfig.DEBUG) {
mNavigator.getSimulator().simulateLocationsAlongExistingRoute(
new SimulationOptions().speedMultiplier(5));
}
// Start turn-by-turn guidance along the current route.
mNavigator.startGuidance();
break;
// Handle error conditions returned by the navigator.
case NO_ROUTE_FOUND:
displayMessage("Error starting navigation: No route found.");
break;
case NETWORK_ERROR:
displayMessage("Error starting navigation: Network error.");
break;
case ROUTE_CANCELED:
displayMessage("Error starting navigation: Route canceled.");
break;
default:
displayMessage("Error starting navigation: "
+ String.valueOf(code));
}
}
});
}
Kotlin
private fun navigateToLocation(locationLatLng: LatLng, travelMode: RoutingOptions) {
val destination = Waypoint.newBuilder().setLocation(locationLatLng).build()
// Create a future to await the result of the asynchronous navigator task.
val pendingRoute = mNavigator.setDestination(destination, travelMode)
// Define the action to perform when the SDK has determined the route.
pendingRoute.setOnResultListener(
object : ListenableResultFuture.OnResultListener<Navigator.RouteStatus>() {
override fun onResult(code: Navigator.RouteStatus) {
when (code) {
Navigator.RouteStatus.OK -> {
// Hide the toolbar to maximize the navigation UI.
getActionBar()?.hide()
// Enable voice audio guidance (through the device speaker).
mNavigator.setAudioGuidance(Navigator.AudioGuidance.VOICE_ALERTS_AND_GUIDANCE)
// Simulate vehicle progress along the route for demo/debug builds.
if (BuildConfig.DEBUG) {
mNavigator
.getSimulator()
.simulateLocationsAlongExistingRoute(SimulationOptions().speedMultiplier(5))
}
// Start turn-by-turn guidance along the current route.
mNavigator.startGuidance()
}
Navigator.RouteStatus.NO_ROUTE_FOUND -> {
displayMessage("Error starting navigation: No route found.")
}
Navigator.RouteStatus.NETWORK_ERROR -> {
displayMessage("Error starting navigation: Network error.")
}
Navigator.RouteStatus.ROUTE_CANCELED -> {
displayMessage("Error starting navigation: Route canceled.")
}
else -> {
displayMessage("Error starting navigation: ${code.name}")
}
}
}
}
)
}
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-08-31 UTC.
[null,null,["Ostatnia aktualizacja: 2025-08-31 UTC."],[[["\u003cp\u003eThis guide explains how to set a vehicle's destination in your driver app after a trip is matched using Fleet Engine and the Driver SDK.\u003c/p\u003e\n"],["\u003cp\u003eYou need to retrieve the destination waypoints from Fleet Engine's \u003ccode\u003eGetTrip()\u003c/code\u003e, \u003ccode\u003eUpdateTrip()\u003c/code\u003e, or \u003ccode\u003eGetVehicle()\u003c/code\u003e methods.\u003c/p\u003e\n"],["\u003cp\u003eUse the Navigation SDK's \u003ccode\u003esetDestination()\u003c/code\u003e method, ensuring the coordinates match the trip's waypoint for proper consumer app rendering.\u003c/p\u003e\n"],["\u003cp\u003eCode samples in Java and Kotlin demonstrate how to implement destination setting and initiate turn-by-turn navigation in the driver app.\u003c/p\u003e\n"]]],["After pairing a consumer with a driver, configure the trip's destination in the driver app. First, retrieve the vehicle's destination from Fleet Engine's waypoints collection using `GetTrip()`, `UpdateTrip()`, or `GetVehicle()`. Then, set the destination by calling the Navigation SDK's `setDestination()` method. Ensure the provided latitude/longitude coordinates match the trip's waypoint. Finally, enable voice guidance, optionally simulate vehicle progress, and initiate turn-by-turn guidance with `startGuidance()`. Handle any errors as required.\n"],null,["This section documents how to set the vehicle's destination after your server\nmatches a trip to a vehicle.\n\nBefore you begin\n\nThis section requires you to have completed the following:\n\n- [Initialize the Driver SDK](/maps/documentation/mobility/driver-sdk/on-demand/android/initialize-sdk)\n- [Get the vehicle ready](/maps/documentation/mobility/driver-sdk/on-demand/android/vehicle-ready)\n- [Create a trip in Fleet Engine](/maps/documentation/mobility/fleet-engine/journeys/trips/create-trip)\n\nSet the destination in the driver app\n\nAfter you have paired a consumer with a driver, you must configure the trip's\ndestination in the driver app by performing the following steps:\n\n1. Retrieve the vehicle's destination from its waypoints collection in Fleet\n Engine, which is returned by `GetTrip()`, `UpdateTrip()` and `GetVehicle()`.\n\n2. Set the destination by calling the Navigation SDK for Android method\n [`setDestination()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/Navigator#public-abstract-listenableresultfuturenavigator.routestatus-setdestination-waypoint-destination).\n\n | **Note:** For the consumer app to properly render the trip, make sure the geographic latitude/longitude coordinates supplied to `setDestination()` match those in the trip's waypoint. For more information, see the tutorials [Route to a Single Destination](/maps/documentation/navigation/android-sdk/route) and [Route to Multiple Destinations](/maps/documentation/navigation/android-sdk/multi-destination).\n\nThe following examples show how to set the destination in the driver\napp. \n\nJava \n\n private void navigateToLocation(LatLng locationLatLng, RoutingOptions routingOptions) {\n Waypoint destination = Waypoint.newBuilder().setLocation(locationLatLng).build();\n\n // Create a future to await the result of the asynchronous navigator task.\n ListenableResultFuture\u003cNavigator.RouteStatus\u003e pendingRoute =\n mNavigator.setDestination(destination, travelMode);\n\n // Define the action to perform when the SDK has determined the route.\n pendingRoute.setOnResultListener(\n new ListenableResultFuture.OnResultListener\u003cNavigator.RouteStatus\u003e() {\n @Override\n public void onResult(Navigator.RouteStatus code) {\n switch (code) {\n case OK:\n // Hide the toolbar to maximize the navigation UI.\n if (getActionBar() != null) {\n getActionBar().hide();\n }\n\n // Enable voice audio guidance (through the device speaker).\n mNavigator.setAudioGuidance(\n Navigator.AudioGuidance.VOICE_ALERTS_AND_GUIDANCE);\n\n // Simulate vehicle progress along the route for demo/debug builds.\n if (BuildConfig.DEBUG) {\n mNavigator.getSimulator().simulateLocationsAlongExistingRoute(\n new SimulationOptions().speedMultiplier(5));\n }\n\n // Start turn-by-turn guidance along the current route.\n mNavigator.startGuidance();\n break;\n // Handle error conditions returned by the navigator.\n case NO_ROUTE_FOUND:\n displayMessage(\"Error starting navigation: No route found.\");\n break;\n case NETWORK_ERROR:\n displayMessage(\"Error starting navigation: Network error.\");\n break;\n case ROUTE_CANCELED:\n displayMessage(\"Error starting navigation: Route canceled.\");\n break;\n default:\n displayMessage(\"Error starting navigation: \"\n + String.valueOf(code));\n }\n }\n });\n }\n\nKotlin \n\n private fun navigateToLocation(locationLatLng: LatLng, travelMode: RoutingOptions) {\n val destination = Waypoint.newBuilder().setLocation(locationLatLng).build()\n\n // Create a future to await the result of the asynchronous navigator task.\n val pendingRoute = mNavigator.setDestination(destination, travelMode)\n\n // Define the action to perform when the SDK has determined the route.\n pendingRoute.setOnResultListener(\n object : ListenableResultFuture.OnResultListener\u003cNavigator.RouteStatus\u003e() {\n override fun onResult(code: Navigator.RouteStatus) {\n when (code) {\n Navigator.RouteStatus.OK -\u003e {\n // Hide the toolbar to maximize the navigation UI.\n getActionBar()?.hide()\n\n // Enable voice audio guidance (through the device speaker).\n mNavigator.setAudioGuidance(Navigator.AudioGuidance.VOICE_ALERTS_AND_GUIDANCE)\n\n // Simulate vehicle progress along the route for demo/debug builds.\n if (BuildConfig.DEBUG) {\n mNavigator\n .getSimulator()\n .simulateLocationsAlongExistingRoute(SimulationOptions().speedMultiplier(5))\n }\n\n // Start turn-by-turn guidance along the current route.\n mNavigator.startGuidance()\n }\n Navigator.RouteStatus.NO_ROUTE_FOUND -\u003e {\n displayMessage(\"Error starting navigation: No route found.\")\n }\n Navigator.RouteStatus.NETWORK_ERROR -\u003e {\n displayMessage(\"Error starting navigation: Network error.\")\n }\n Navigator.RouteStatus.ROUTE_CANCELED -\u003e {\n displayMessage(\"Error starting navigation: Route canceled.\")\n }\n else -\u003e {\n displayMessage(\"Error starting navigation: ${code.name}\")\n }\n }\n }\n }\n )\n }"]]