Przygotuj pojazd

Z tej sekcji dowiesz się, jak przygotować pojazd do podróży. Musisz wykonać: wykonać każdy z poniższych kroków, zanim system backendu będzie mógł dopasować pojazd do podróży.

Skonfiguruj detektor

Pakiet Driver SDK wykonuje działania w w tle, użyj funkcji DriverStatusListener, aby otrzymywać powiadomienia, gdy takich jak błędy, ostrzeżenia czy komunikaty debugowania. Błędy mogą być przejściowy (np. BACKEND_CONNECTIVITY_ERROR) lub mogą powoduje trwałe zatrzymanie aktualizacji lokalizacji. Jeśli na przykład otrzymasz wiadomość VEHICLE_NOT_FOUND. Oznacza to błąd konfiguracji.

Poniższy przykład pokazuje implementację DriverStatusListener:

class MyStatusListener implements DriverStatusListener {
  /** Called when background status is updated, during actions such as location reporting. */
  @Override
  public void updateStatus(
      StatusLevel statusLevel, StatusCode statusCode, String statusMsg, @Nullable Throwable cause) {
    // Existing implementation

    if (cause != null && cause instanceof StatusRuntimeException) {
      if (Status.NOT_FOUND.getCode().equals(cause.getStatus().getCode())) {
        // NOT_FOUND gRPC exception thrown by Fleet Engine.
      }
    }
  }
}

DriverContextBuilder.setDriverStatusListener(new MyStatusListener());

Włącz aktualizacje lokalizacji

Po skonfigurowaniu odbiornika włącz aktualizacje lokalizacji w następujący sposób:

Java

RidesharingVehicleReporter reporter = ...;

reporter.enableLocationTracking();

Kotlin

val reporter = ...

reporter.enableLocationTracking()

Ustaw interwał aktualizacji

Domyślnie Driver SDK wysyła aktualizacje lokalizacji w 10-sekundowych odstępach. gdy stan pojazdu to ONLINE. Możesz zmienić ten interwał, używając: reporter.setLocationReportingInterval(long, TimeUnit) Minimalna obsługiwana liczba co 5 sekund. Częstsze aktualizacje mogą spowolnić działanie żądań i błędów.

Ustaw stan pojazdu na online

Gdy włączysz aktualizacje lokalizacji, możesz ustawić stan pojazdu na ONLINE udostępnić pojazd dla SearchVehicles zapytań we Fleet Engine. Pakiet Driver SDK wysyła zaktualizowany stan pojazdu wraz z aktualizacjami lokalizacji.

Stan pojazdu możesz ustawić bezpośrednio w pakiecie Driver SDK lub we Fleet Engine serwera. Więcej informacji znajdziesz w artykule Aktualizowanie pojazdu.

Poniższe przykłady pokazują, jak ustawić stan pojazdu na online w sekcji Kierowca Pakiet SDK:

Java

RidesharingVehicleReporter reporter = ...;

reporter.enableLocationTracking();
reporter.setVehicleState(VehicleState.ONLINE);

Kotlin

val reporter = ...

reporter.enableLocationTracking()
reporter.setVehicleState(VehicleState.ONLINE)

StatusListener zgłasza też wszelkie błędy, które wystąpiły podczas aktualizowania stanu pojazdu.

Co dalej?

Ustawianie szczegółów podróży