GMTDDeliverVehicleReporter 類別參考資料

GMTDDeliverVehicleReporter 類別參考資料

總覽

用於將資訊傳送至 Fleet Engine 後端的物件。

用於配送。

沿用 GMTDVehicleReporter

公開成員函式

(void) - setVehicleStops:complete:
 更新車輛的其餘 VehicleStops。
(void) - reportEnrouteToNextStopWithComplete:
 remainingVehicleStops 中第一個 GMTDVehicleStop 的狀態更新為 GMTDVehicleStopStateEnroute
(void) - reportArrivedAtStopWithComplete:
 remainingVehicleStops 中第一個 GMTDVehicleStop 的狀態更新為 GMTDVehicleStopStateArrived
(void) - reportCompletedStopWithComplete:
 移除 remainingVehicleStops 中的第一個 GMTDVehicleStop
(void) - getRemainingVehicleStopsWithCOMPLETE:
 取得車輛仍需造訪的其餘 GMTDVehicleStop 物件。
(void) - updateVehicleState:
 更新車輛狀態。
(void) - addListener:
 新增事件監聽器。
(void) - removeListener:
 移除事件監聽器。

受保護的類型

typedef void(^ GMTDVehicleReporterStopCompletionHandler )(NSArray< GMTDVehicleStop * > *_Nullable stop, NSError *_Nullable error)
 透過 GMTDDeliveryVehicleReporter 更新停靠站的處理常式。

受保護的屬性

 __pad0__:NSObject <GMSNavigatorListener

資源

GMSRoadSnappedLocationProviderListener
BOOL
locationTrackingEnabled
 此類別沒有公開初始化器;從 GMTDDeliveryDriverAPIGMTDRidesharingDriverAPI 物件的 vehicleReporter 屬性取得這個物件。
NSTimeIntervallocationReportingInterval
 表示位置報表傳送至 Fleet Engine 的最短間隔。

成員函式說明文件

- (void) setVehicleStops: (NSArray< GMTDVehicleStop * > *) vehicleStops
完成: (GMTDVehicleReporterStopCompletionHandler) 完成

更新車輛的其餘 VehicleStops。

結果會在 remainingVehicleStops 中以非同步方式反映。車輛應按照陣列的順序造訪停靠站。

參數:
vehicleStops車輛造訪的 GMTDVehicleStop 物件已排序陣列。這必須為非 nil,且第一個停靠站以外的所有停靠站的狀態必須為 GMTDVehicleStopStateNew
完成在停靠站更新後執行的區塊。

remainingVehicleStops 中第一個 GMTDVehicleStop 的狀態更新為 GMTDVehicleStopStateEnroute

呼叫這個函式時,remainingVehicleStops 必須包含至少一個停靠站。

參數:
完成在停靠站更新後執行的區塊。

remainingVehicleStops 中第一個 GMTDVehicleStop 的狀態更新為 GMTDVehicleStopStateArrived

呼叫這個函式時,remainingVehicleStops 必須包含至少一個停靠站。

參數:
完成在停靠站更新後執行的區塊。

移除 remainingVehicleStops 中的第一個 GMTDVehicleStop

呼叫這個函式時,remainingVehicleStops 必須包含至少一個停靠站。

參數:
完成在停靠站更新後執行的區塊。

取得車輛仍需造訪的其餘 GMTDVehicleStop 物件。

參數:
完成使用擷取的 GMTDVehicleStop 物件執行完成。完成將在主執行緒上以非同步方式執行。
- (void) updateVehicleState: (GMTDVehicleState)。 vehicleState

更新車輛狀態。

僅用於代僱駕駛服務。

如果將 locationTrackingEnabled 設為 NO,將狀態設為 GMTDVehicleStateOnline 會失敗。

如果設定不同的狀態,系統會將一次性要求傳送至 Fleet Engine 後端。

這個方法會更新伺服器端狀態,用戶端應用程式應監控 fleetEngine:didSucceedVehicleUpdate:fleetEngine:didFailVehicleUpdate:withError:,以確認成功或失敗。如果將 locationTrackingEnabled 設為「YES」,系統就會自動重試作業。

參數:
vehicleState所需車輛狀態。
- (void) addListener: (ID< GMTDVehicleReporterListener >) 事件監聽器

新增事件監聽器。

事件監聽器拿著微弱的參照。

參數:
事件監聽器符合 GMTDVehicleReporterListener 通訊協定的物件。
- (void) removeListener: (ID< GMTDVehicleReporterListener >) 事件監聽器

移除事件監聽器。

參數:
事件監聽器符合 GMTDVehicleReporterListener 通訊協定的物件。

成員資料說明文件

- GMTDVehicleReporter: [protected, inherited]

屬性說明文件

- (GMSRoadSnappedLocationProviderListener BOOL) locationTrackingEnabled [read, write, assign, inherited]

此類別沒有公開初始化器;從 GMTDDeliveryDriverAPIGMTDRidesharingDriverAPI 物件的 vehicleReporter 屬性取得這個物件。

用於表示是否已啟用位置追蹤。

如果設為 YES,系統會根據 locationUpdateInterval 設定的值,定期將行程和車輛更新資料傳送至 Fleet Engine 後端。

如果設為 NO,系統會將更新停靠站和一次性車輛更新要求傳送至 Fleet Engine 後端,以便將車輛狀態設為 GMTDVehicleStateOffline。請參閱 updateVehicleState,瞭解在 locationTrackingEnabled 設為 NO 時處理失敗的特殊注意事項。

- (NSTimeInterval) locationReportingInterval [read, write, assign, inherited]

表示位置報表傳送至 Fleet Engine 的最短間隔。

注意:
預設的報表間隔為 10 秒。支援的最大值為 60 秒,支援的最小值為 5 秒。如果使用超出這個範圍的值,要求的值會自動調整為該範圍。