يوضّح هذا المستند كيف يمكنك إدارة إعداداتك المفضّلة لنقاط الطريق في تطبيقك باستخدام ميزتَين:
- الإعدادات المفضّلة لتحديد المسار على جانب الطريق
- توقف مؤقت
ضبط الإعدادات المفضّلة للتوجيه على جانب الطريق
تجد Navigation SDK لنظام التشغيل iOS تلقائيًا أسرع طريق إلى نقطة طريق، ولكن هذا لا يضمن وصول المستخدم إلى الجانب المطلوب من الطريق، مثلاً، الجانب الذي ينتظره فيه العميل الذي طلب خدمة مشاركة الركوب. تتيح لك ميزة تفضيل التوجيه إلى جانب الطريق التأكّد من وصول المركبة إلى الجانب الصحيح من الطريق.
آلية العمل
يمكنك ضبط الإعدادات المفضّلة للوصول إلى جهة معيّنة من الطريق عند إنشاء نقطة الطريق الخاصة بتلك المحطة. يمكنك تحديد الخيار المفضّل بإحدى طريقتين.
تفضيل الجانب نفسه من الطريق
عليك تقديم الإحداثيات الجغرافية لنقطة الطريق، ثم ضبط علامة
preferSameSideOfRoad
تشير إلى أنّك تفضّل الوصول إلى نقطة الطريق على الجانب نفسه من الطريق، مع محاذاتها لأقرب رصيف.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferSameSideOfRoad:(BOOL)preferSameSideOfRoad;
ضبط اتجاه الوصول
يجب تقديم الإحداثيات الجغرافية لنقطة الطريق، ثم تقديم
عنوان الوصول
preferredSegmentHeading
الذي يتطابق مع اتجاه حركة المرور على الجانب نفسه من الطريق الذي يقع فيه
الموقع الجغرافي للوجهة.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferredSegmentHeading:(int32_t)preferredSegmentHeading;
تختار حزمة تطوير البرامج (SDK) الخاصة بخدمة "التنقّل" الجزء من الطريق الأقرب إلى نقطة الطريق، والذي يتضمّن اتجاهًا للمسار يتوافق (في حدود 55 درجة +/-) مع جانب الطريق الذي تقع عليه نقطة الطريق.
ضبط الإعدادات المفضّلة للتوقف
في بعض الأماكن، لا يمكن للمستخدمين التوقف بأمان (على سبيل المثال، المناطق المرتفعة والعبّارات والمواقع تحت الأرض وغيرها من المناطق التي يصعب الوصول إليها). تنقل ميزة محطة توقّف نقطة الطريق إلى مكان قريب إذا كان موقعها الجغرافي غير مناسب لتوقّف المستخدم. عند ضبط
vehicleStopover
على YES
، تتم إعادة تحديد الموقع الجغرافي لنقطة الطريق تلقائيًا عند احتساب المسار، إذا كان يتوفّر موقع جغرافي بديل.
آلية العمل
يمكنك ضبط الإعدادات المفضّلة لمكان التوقّف عند إنشاء نقطة الطريق لهذا التوقّف.
لإجراء ذلك، اضبط الإعداد المفضّل لوقفة في
GMSNavigationMutableWaypoint
كما هو موضّح في المثال التالي:
Swift
let location = CLLocationCoordinate2D(latitude: 47.67, longitude: -122.20) let waypoint = GMSNavigationMutableWaypoint(location: location, title: "waypoint from location")! waypoint.vehicleStopover = true mapView.navigator?.setDestinations([waypoint], routingOptions: routingOptions, callback: {...})
Objective-C
CLLocationCoordinate2D location = CLLocationCoordinate2DMake(47.67, -122.20); GMSNavigationMutableWaypoint *waypoint = [[GMSNavigationMutableWaypoint alloc] initWithLocation:location title:@"waypoint from location"]; waypoint.vehicleStopover = YES; [_mapView.navigator setDestinations:@[waypoint1] routingOptions:routingOptions callback:^(GMSRouteStatus routeStatus){...}];