इस सेक्शन में, गड़बड़ियों को मैनेज करने का तरीका बताया गया है.
update_mask से जुड़ी गड़बड़ियां ठीक करना
जब GMTDDeliveryVehicleReporter
, वाहन से जुड़ा अपडेट भेजता है, तो updateMask
क्वेरी पैरामीटर खाली होने पर update_mask
गड़बड़ी हो सकती है. इस गड़बड़ी को रोकने के लिए, हमेशा कम से कम एक फ़ील्ड का नाम दें. आम तौर पर, ऐसा स्टार्टअप के बाद होने वाले पहले अपडेट के लिए होता है. Fleet Engine में वाहन के फ़ील्ड अपडेट करने के बारे में ज़्यादा जानने के लिए, वाहन के फ़ील्ड अपडेट करना लेख पढ़ें.
इस गड़बड़ी को ठीक करने का तरीका यहां बताया गया है:
Swift
import GoogleRidesharingDriver
class VehicleReporterListener: NSObject, GMTDVehicleReporterListener {
func vehicleReporter(
_ vehicleReporter: GMTDVehicleReporter,
didFail vehicleUpdate: GMTDVehicleUpdate,
withError error: Error
) {
let fullError = error as NSError
if let innerError = fullError.userInfo[NSUnderlyingErrorKey] as? NSError {
let innerFullError = innerError as NSError
if innerFullError.localizedDescription.contains("update_mask cannot be empty") {
emptyMaskUpdates += 1
return
}
}
failedUpdates += 1
}
override init() {
emptyMaskUpdates = 0
failedUpdates = 0
}
}
Objective-C
#import "VehicleReporterListener.h"
#import <GoogleRidesharingDriver/GoogleRidesharingDriver.h>
@implementation VehicleReporterListener {
NSInteger emptyMaskUpdates = 0;
NSInteger failedUpdates = 0;
}
- (void)vehicleReporter:(GMTDVehicleReporter *)vehicleReporter
didFailVehicleUpdate:(GMTDVehicleUpdate *)vehicleUpdate
withError:(NSError *)error {
for (NSError *underlyingError in error.underlyingErrors) {
if ([underlyingError.localizedDescription containsString:@"update_mask cannot be empty"]) {
emptyMaskUpdates += 1;
return;
}
}
failedUpdates += 1
}
@end