يوضّح هذا المستند كيفية إدارة الإعدادات المفضّلة لنقاط الطريق في تطبيقك باستخدام ميزتَين:
- الإعدادات المفضّلة لمسار التنقّل على جانب الطريق
- التوقف المؤقت
ضبط الإعدادات المفضّلة لمسار التنقّل على جانب الطريق
يبحث حزمة تطوير البرامج (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;
يختار Navigation SDK جزء الطريق الأقرب إلى نقطة الالتفاف، والذي يكون اتجاه مساره متوافقًا (+/- 55 درجة) مع جانب الطريق الذي تقع عليه نقطة الالتفاف.
ضبط الإعدادات المفضّلة للتوقف
في أماكن معيّنة، لا يمكن للمستخدمين التوقف بأمان (مثل
المناطق المرتفعة والعبارات والمواقع الجغرافية تحت الأرض والمناطق الأخرى التي يصعب فيها
الوصول). تعيد ميزة التوقف تحديد موقع نقطة الطريق إلى مكان قريب إذا كان
موقعها الجغرافي غير مناسب للمستخدم للتوقف. عند ضبط
vehicleStopover
على YES
، تتم إعادة تحديد موقع نقطة الطريق تلقائيًا عند
احتساب المسار، إذا كان هناك موقع بديل متاحًا.
آلية العمل
يمكنك ضبط الإعدادات المفضّلة للتوقف عند إنشاء نقطة الطريق لهذا التوقف.
لإجراء ذلك، اضبط الإعدادات المفضّلة لنقطة التوقف على
GMSNavigationMutableWaypoint
كما هو موضّح في المثال التالي:
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: {...})
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){...}];