차량 준비

이 섹션에서는 이동을 위해 차량을 준비하는 방법을 보여줍니다. 다음을 완료해야 합니다. 다음 각 단계를 완료해야 백엔드에서 차량을 이동과 일치시킬 수 있습니다.

리스너 설정

Driver SDK는 백그라운드에서 특정 시점에 DriverStatusListener를 사용하여 알림을 오류, 경고, 디버그 메시지 등의 이벤트가 발생할 수 있습니다 오류는 다음과 같은 특징이 있습니다. BACKEND_CONNECTIVITY_ERROR와 같이 일시적인 특성이 있거나 위치 업데이트가 영구적으로 중지됩니다. 예를 들어 VEHICLE_NOT_FOUND 오류는 구성 오류를 나타냅니다.

다음 예는 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());

위치 업데이트 사용 설정

리스너를 설정한 후 다음과 같이 위치 업데이트를 사용 설정합니다.

자바

RidesharingVehicleReporter reporter = ...;

reporter.enableLocationTracking();

Kotlin

val reporter = ...

reporter.enableLocationTracking()

업데이트 간격 설정

기본적으로 Driver SDK는 10초 간격으로 위치 업데이트를 전송합니다. 차량 상태가 ONLINE일 때 간격입니다. 이 간격은 reporter.setLocationReportingInterval(long, TimeUnit) 지원되는 최소 업데이트 간격은 5초입니다. 자주 업데이트하면 속도가 느려질 수 있습니다. 요청 및 오류를 해결합니다

차량 상태를 온라인으로 설정

위치 업데이트를 사용 설정하면 차량 상태를 ONLINE로 설정할 수 있습니다. 차량을 Fleet Engine에서 SearchVehicles 쿼리에 사용할 수 있도록 합니다. 이 Driver SDK는 위치 업데이트와 함께 업데이트된 차량 상태를 전송합니다.

Driver SDK 또는 Fleet Engine에서 직접 차량 상태를 설정할 수 있습니다. 있습니다. 자세한 내용은 차량 업데이트를 참고하세요.

다음 예는 운전자에서 차량 상태를 온라인으로 설정하는 방법을 보여줍니다. SDK:

자바

RidesharingVehicleReporter reporter = ...;

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

Kotlin

val reporter = ...

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

또한 StatusListener는 있습니다.

다음 단계

경로 세부정보 설정