সমস্যা সমাধান করুন

এই বিভাগটি কীভাবে ত্রুটিগুলি পরিচালনা করতে হয় তা বর্ণনা করে।

আপডেট_মাস্ক ত্রুটিগুলি পরিচালনা করুন

যখন GMTDDeliveryVehicleReporter একটি গাড়ির আপডেট পাঠায়, একটি update_mask ত্রুটি ঘটতে পারে যখন updateMask ক্যোয়ারী প্যারামিটার খালি থাকে। এই ত্রুটি প্রতিরোধ করতে, সর্বদা অন্তত একটি ক্ষেত্রের নাম প্রদান করুন। এটি সাধারণত স্টার্টআপের পরে প্রথম আপডেটের জন্য ঘটে। ফ্লিট ইঞ্জিনে গাড়ির ক্ষেত্রগুলি আপডেট করার বিষয়ে আরও তথ্যের জন্য, যানবাহনের ক্ষেত্রগুলি আপডেট করুন দেখুন।

নিম্নলিখিত উদাহরণ দেখায় কিভাবে এই ত্রুটি পরিচালনা করতে হয়:

সুইফট

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
  }
}

উদ্দেশ্য গ

#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