В этом разделе описывается, как обрабатывать ошибки.
Обработка ошибок update_mask
Когда GMTDDeliveryVehicleReporter
отправляет обновление транспортного средства, может возникнуть ошибка update_mask
, если параметр запроса updateMask
пуст. Чтобы предотвратить эту ошибку, всегда указывайте хотя бы одно имя поля. Обычно это происходит при первом обновлении после запуска. Дополнительные сведения об обновлении полей транспортных средств в Fleet Engine см. в разделе Обновление полей транспортных средств .
В следующем примере показано, как справиться с этой ошибкой:
Быстрый
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
}
}
Цель-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
В этом разделе описывается, как обрабатывать ошибки.
Обработка ошибок update_mask
Когда GMTDDeliveryVehicleReporter
отправляет обновление транспортного средства, может возникнуть ошибка update_mask
, если параметр запроса updateMask
пуст. Чтобы предотвратить эту ошибку, всегда указывайте хотя бы одно имя поля. Обычно это происходит при первом обновлении после запуска. Дополнительные сведения об обновлении полей транспортных средств в Fleet Engine см. в разделе Обновление полей транспортных средств .
В следующем примере показано, как справиться с этой ошибкой:
Быстрый
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
}
}
Цель-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
В этом разделе описывается, как обрабатывать ошибки.
Обработка ошибок update_mask
Когда GMTDDeliveryVehicleReporter
отправляет обновление транспортного средства, может возникнуть ошибка update_mask
, если параметр запроса updateMask
пуст. Чтобы предотвратить эту ошибку, всегда указывайте хотя бы одно имя поля. Обычно это происходит при первом обновлении после запуска. Дополнительные сведения об обновлении полей транспортных средств в Fleet Engine см. в разделе Обновление полей транспортных средств .
В следующем примере показано, как справиться с этой ошибкой:
Быстрый
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
}
}
Цель-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