Android के लिए Driver SDK 3.0 रिलीज़ के लिए, आपको कुछ कार्रवाइयों के लिए अपना कोड अपडेट करना होगा. इस गाइड में, बदलावों के बारे में बताया गया है. साथ ही, यह भी बताया गया है कि आपको अपने कोड को माइग्रेट करने के लिए क्या करना होगा.
पैकेज का नाम बदलना
पैकेज का नाम com.google.android.libraries.ridesharing.driver से बदलकर com.google.android.libraries.mapsplatform.transportation.driver कर दिया गया है. कृपया अपने कोड में मौजूद रेफ़रंस अपडेट करें.
एसडीके को शुरू करना
पिछले वर्शन में, Navigation SDK को शुरू किया जाता था. इसके बाद, FleetEngine क्लास का रेफ़रंस मिलता था. Driver SDK v3 में, एसडीके को इस तरह से शुरू करें:
NavigationApiसेNavigatorऑब्जेक्ट पाएं.NavigationApi.getNavigator( this, // Activity new NavigationApi.NavigatorListener() { @Override public void onNavigatorReady(Navigator navigator) { // Keep a reference to the Navigator (used to configure and start nav) this.navigator = navigator; } } );ज़रूरी फ़ील्ड में जानकारी भरकर,
DriverContextऑब्जेक्ट बनाएं.DriverContext driverContext = DriverContext.builder(application) .setProviderId(providerId) .setVehicleId(vehicleId) .setAuthTokenFactory(authTokenFactory) .setNavigator(navigator) .setRoadSnappedLocationProvider( NavigationApi.getRoadSnappedLocationProvider(application)) .build()*DriverApiको शुरू करने के लिए,DriverContextऑब्जेक्ट का इस्तेमाल करें.एपीआई ऑब्जेक्ट से
NavigationVehicleReporterपाएं.*VehicleReporterतकNavigationVehicleReporter.
जगह की जानकारी के अपडेट चालू और बंद करना
पिछले वर्शन में, आपको FleetEngine रेफ़रंस पाने के बाद, जगह की जानकारी के अपडेट चालू करने होते थे. ड्राइवर SDK v3 में, स्थान अपडेट को निम्न प्रकार सक्षम करें:
रिपोर्टिंग इंटरवल को अपडेट करने के लिए, RidesharingVehicleReporter.setLocationReportingInterval(long, TimeUnit) या DeliveryVehicleReporter.setLocationReportingInterval(long, TimeUnit) का इस्तेमाल करें.
ड्राइवर की ड्यूटी खत्म होने के बाद, जगह की जानकारी के अपडेट बंद करें. साथ ही, NavigationVehicleReporter.disableLocationTracking() पर कॉल करके वाहन को ऑफ़लाइन के तौर पर मार्क करें.
StatusListener की मदद से गड़बड़ी की रिपोर्ट करना
ErrorListener को हटा दिया गया है और इसे StatusListener के साथ जोड़ दिया गया है. इसे इस तरह से तय किया जा सकता है:
class MyStatusListener implements StatusListener {
/** Called when background status is updated, during actions such as location reporting. */
@Override
public void updateStatus(
StatusLevel statusLevel,
StatusCode statusCode,
String statusMsg) {
// Status handling stuff goes here.
// StatusLevel may be DEBUG, INFO, WARNING, or ERROR.
// StatusCode may be DEFAULT, UNKNOWN_ERROR, VEHICLE_NOT_FOUND,
// BACKEND_CONNECTIVITY_ERROR, or PERMISSION_DENIED.
}
}