Aracı hazırlayın

Bu bölümde, aracı yolculuklara nasıl hazırlayacağınız gösterilmektedir. Arka uçunuzun bir aracı bir yolculukla eşleştirebilmesi için aşağıdaki adımların her birini tamamlamanız gerekir.

Dinleyici ayarlama

Sürücü SDK'sı işlemleri arka planda gerçekleştirdiğinden, belirli etkinlikler (ör. hatalar, uyarılar veya hata ayıklama mesajları) gerçekleştiğinde bildirimleri tetiklemek için DriverStatusListener kullanın. Hatalar geçici olabilir (ör. BACKEND_CONNECTIVITY_ERROR) veya konum güncellemelerinin kalıcı olarak durmasına neden olabilir. Örneğin, VEHICLE_NOT_FOUND hatası alırsanız bu, yapılandırma hatası olduğunu gösterir.

Aşağıdaki örnekte bir DriverStatusListener uygulaması gösterilmektedir:

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());

Konum güncellemelerini etkinleştirme

Dinleyiciyi ayarladıktan sonra konum güncellemelerini aşağıdaki şekilde etkinleştirin:

Java

RidesharingVehicleReporter reporter = ...;

reporter.enableLocationTracking();

Kotlin

val reporter = ...

reporter.enableLocationTracking()

Güncelleme aralığını ayarlama

Varsayılan olarak, araç durumu ONLINE olduğunda Driver SDK, konum güncellemelerini 10 saniyelik aralıklarla gönderir. Bu aralığı reporter.setLocationReportingInterval(long, TimeUnit) ile değiştirebilirsiniz. Desteklenen minimum güncelleme aralığı 5 saniyedir. Daha sık güncelleme, isteklerin yavaşlamasına ve hatalara neden olabilir.

Araç durumunu "online" olarak ayarlayın.

Konum güncellemelerini etkinleştirdiğinizde, araç durumunu ONLINE olarak ayarlayarak aracı Fleet Engine'deki SearchVehicles sorgularında kullanılabilir hale getirebilirsiniz. Sürücü SDK'sı, konum güncellemeleriyle birlikte güncellenmiş araç durumunu gönderir.

Araç durumunu doğrudan Sürücü SDK'sında veya Fleet Engine sunucusunda ayarlayabilirsiniz. Daha fazla bilgi için Aracı Güncelleme başlıklı makaleyi inceleyin.

Aşağıdaki örneklerde, Driver SDK'sında araç durumunun nasıl "online" olarak ayarlanacağı gösterilmektedir:

Java

RidesharingVehicleReporter reporter = ...;

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

Kotlin

val reporter = ...

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

StatusListener, araç durumu güncellenirken oluşan hataları da bildirir.

Sırada ne var?

Gezi ayrıntılarını ayarlama