הפניה לכיתה של GMSNavigator


סקירה כללית

זוהי הסיווג העיקרי של Google Navigation SDK ל-iOS ומספקת שיטות לשליטה בניווט ליעד ולגישה למידע על מסלול והתקדמות.

הכיתה הזו לא תומכת בסיווג משנה.

הכיתה הזו לא בטוחה לשרשורים. צריך להפעיל את כל השיטות מה-thread הראשי.

פונקציות של חברי מועדון

(void) addListener:
 הוספת מאזין.
(BOOL) - removeListener:
 הסרה של האזנה.
(void) - setDestinations:callback:
 מגדירה יעדים מרובים לניווט, תוך ביטול כל היעדים שהוגדרו בעבר.
(void) - setDestinations:routingOptions:callback:
 מגדירה יעדים מרובים לניווט, תוך ביטול כל היעדים שהוגדרו בעבר.
(void) - setDestinations:routeToken:callback:
 מגדירה יעדים מרובים לניווט באמצעות אסימון מסלול, כדי לנווט במסלול שחושב מראש.
(void) - getRouteInfoForDestination:withRoutingOptions:callback:
 מחזירה מידע על המסלול בהתאם לאסטרטגיית הניתוב: המסלול הטוב ביותר או קצר יותר כברירת מחדל.
(nullable GMSNavigationWaypoint *)- continueToNextDestination
 הוּצא משימוש.
(void) clearDestinations
 ניקוי כל היעדים שהוגדרו בעבר והסרת המסלולים המחושבים מהמפה.
(NSTimeInterval)timeToWaypoint:
 מחזירה את הזמן המשוער לנקודת הציון הנתונה, או CLTimeIntervalMax אם נקודת הדרך אינה חלק מהמסלול הנוכחי.
(CLLocationDISTANCE)- distanceToWaypoint:
 מחזירה את המרחק המשוער לנקודת הציון הנתונה, או CLLocation הגנה Max אם ציון הדרך אינו חלק מהמסלול הנוכחי.
(void) - setTransactionIDs:errorHandler:
 מגדיר ורושם בשרת את מזהי הטרנזקציות השוטפים שחלים על אירועי הניווט במהלך סשן הניווט הנוכחי.

נכסים

בוליאניavoidsHighways
 האם להימנע מכבישים מהירים בעת יצירת מסלולים ליעדים.
בוליאניavoidsTolls
 האם להימנע מכבישי אגרה בעת יצירת מסלולים ליעדים.
בוליאניavoidsFerries
 האם להימנע ממעבורות בעת יצירת מסלולים ליעדים.
GMSNavigationLicensePlateRestrictionlicensePlateRestriction
 מגדירים הגבלה לפי לוחית רישוי לפי הספרה האחרונה של לוחית רישוי וקוד מדינה.
בוליאניguidanceActive
 אם הוראות מסלול מפורטות מופעלות כרגע.
בוליאניstopGuidanceAtArrival
 אם ההנחיה תיפסק אוטומטית כשמתבצעת קריאה ל--navigator:didcomingAtWaypoint:.
NSTimeIntervaltimeUpdateThreshold
 השינוי המינימלי בזמן המשוער עד ליעד הבא שיפעיל קריאה לשיטה navigator:didUpdateRemainingTime:.
מרחק מ-CLLocationdistanceUpdateThreshold
 השינוי המינימלי במרחק המשוער ליעד הבא שיפעיל קריאה לשיטה navigator:didUpdateRemainingDistance:.
NSTimeIntervaltimeToNextDestination
 מחזירה את הזמן המשוער עד ליעד הבא.
מרחק מ-CLLocationdistanceToNextDestination
 מחזירה את המרחק המשוער מהיעד הבא.
GMSNavigationDelayCategorydelayCategoryToNextDestination
 מחזירה את קטגוריית העיכוב ליעד הבא.
GMSRouteLegcurrentRouteLeg
 החלק הנוכחי של המסע.
NSArray< GMSRouteLeg * > * routeLegs
 מערך של קטעי מסלול שבהם כל רגל תואמת ליעד שהוגדר.
GMSPathtraveledPath
 הנתיב שהמכשיר עבר מאז הפעם האחרונה ש-guideActive הוגדר ל'כן'.
GMSNavigationVoiceGuidancevoiceGuidance
 הגדרה זו קובעת אם יש להפעיל הנחייה קולית עבור עומסי תנועה והתראות פנייה אחר פנייה.
GMSVoiceGuidanceAudioDeviceTypeaudioDeviceType
 הגדרה זו קובעת באילו התקני אודיו ניתן להפעיל הנחייה קולית.
בוליאניvibrationEnabled
 הגדרה זו קובעת אם המכשיר ירטוט גם כשמופעלות התראות קוליות.
בוליאניsendsBackgroundNotifications
 המדיניות הזו קובעת אם ההגדרות של UILocalNotifications שמכילות מידע על הנחיות יוצגו כשהאפליקציה פועלת ברקע.
GMSNavigationLightingModesuggestedLightingMode
 מצב התאורה המוצע על סמך השעה ביום ומיקום המכשיר.
בוליאניshouldDisplayPrompts
 המדיניות הזו קובעת אם יוצגו בקשות לגבי עומסי תנועה, מסלולים טובים יותר ותקריות.
GMSNavigationSpeedAlertOptionsspeedAlertOptions
 GMSNavigationSpeedAlertOptions להתאמה אישית של ערכי הסף להפעלה עבור GMSNavigationSpeedAlertSeverity.

(שימו לב: אלו אינן פונקציות חבר).

typedef void(^ GMSRouteStatusCallback )(GMSRouteStatus pathStatus)
 ההתראה הזו מוצגת כשנמצא מסלול ממיקום המכשיר ליעדים שצוינו או כשהמערכת לא מזהה אותו מסיבה שצוינה ב-RouteStatus.
typedef void(^ GMSRouteInfoCallback )(GMSNavigationRouteInfo *_Nullable pathInfo)
 היא נקראת כאשר מחושב פרטי המסלול (זמן הגעה משוער ומרחק) לנקודת הדרך שצוינה.
typedef void(^ GMSNavigationTransactionIDErrorHandler (NSError *error)
 מתבצעת קריאה אם ההגדרה של מזהי עסקאות באמצעות setTransactionIDs נכשלת.

מסמכי תיעוד לגבי פונקציות של חברים

- (בטל) addListener: (id< GMSNavigatorListener >) מאזינים

הוספת מאזין.

ההאזנה מוחזקת עם הפניה חלשה.

פרמטרים:
listenerאובייקט שתואם לפרוטוקול GMSNavigatorListener.
- (BOOL) removeListener: (id< GMSNavigatorListener >) מאזינים

הסרה של האזנה.

פרמטרים:
listenerאובייקט שתואם לפרוטוקול GMSNavigatorListener.
החזרות:
מחזיר 'כן' אם המאזין הוסר. מחזירה 'לא' אם האובייקט לא היה מאזין.
- (ביטול) setDestinations: (NSArray< GMSNavigationWaypoint * > *) יעדים
קריאה חוזרת: (GMSRouteStatusCallback) התקשרות חזרה

מגדירה יעדים מרובים לניווט, תוך ביטול כל היעדים שהוגדרו בעבר.

אם יימצא מסלול מהמיקום של המכשיר ליעד הנתון, הקריאה החוזרת (callback) שצוינה תהיה דרך GMSRouteStatusOK. אם לא יימצא יעד חדש, הבקשה תבוטל והמערכת תקרא להתקשרות חזרה עם GMSRouteStatusCanceled. אם לא נמצא מסלול מסיבה אחרת, הקריאה החוזרת תבוצע עם סטטוס שגיאה מתאים.

הקריאה החוזרת תישלח תמיד באופן אסינכרוני בתור הראשי.

- (ביטול) setDestinations: (NSArray< GMSNavigationWaypoint * > *) יעדים
ניתוב: (GMSNavigationRoutingOptions *) routingOptions
קריאה חוזרת: (GMSRouteStatusCallback) התקשרות חזרה

מגדירה יעדים מרובים לניווט, תוך ביטול כל היעדים שהוגדרו בעבר.

המסלולים שהוחזרו מחושבים באמצעות אפשרויות הניתוב.

פרמטרים:
יעדים גיאוגרפייםמערך של ציוני דרך ביעד.
routingOptionsהאפשרויות המשפיעות על לוגיקת הניתוב (אסטרטגיית ניתוב).
קריאה חוזרת (callback)ההתראה הזו מוצגת כשמסלול מהמיקום של הצרכן ליעדים שצוינו נמצא או לא נמצא מסיבה שצוינה ב-RouteStatus.
- (ביטול) setDestinations: (NSArray< GMSNavigationWaypoint * > *) יעדים
pathToken: (NSString *) routeToken
קריאה חוזרת: (GMSRouteStatusCallback) התקשרות חזרה

מגדירה יעדים מרובים לניווט באמצעות אסימון מסלול, כדי לנווט במסלול שחושב מראש.

המסלולים יהיו זהים: שינויי מודולו במיקום ההתחלה של הנהג ובתנאי הדרך או מצב התנועה. ניתובים מחדש יבוצעו עדיין בהתאם לאפשרויות הניתוב המקודדות באסימון.

יש תמיכה רק ב-GMSNavigationTravelModeDriving וב-GMSNavigationTravelModeTwoWheeler כשמשתמשים באסימון המסלול כדי להתחיל סשן ניווט. כדי להגדיר את מצב הנסיעה, מגדירים את travelMode. אם אין תמיכה במצב הנסיעה הנוכחי, השיחה תיכשל, ובקריאה החוזרת יוחזר GMSRouteStatusTravelModeUnsupported.

פרמטרים:
יעדים גיאוגרפייםמערך של ציוני דרך ביעד צריך להיות זהה ליעדים שניתנו ל-RoutesPreferred API כדי לקבל את אסימון המסלול.
routeTokenמחרוזת של אסימון נתיב שהוחזר על ידי RoutesPreferred API. אפשרויות הניתוב שצוינו ב-RoutsPreferred API מקודדות באסימון המסלול הזה, וישמשו ליצירה מחדש של המסלול שחושב מראש או של מסלול חדש כשמתרחשת הפניה מחדש.
קריאה חוזרת (callback)ההתראה הזו מוצגת כשנמצא מסלול מהמיקום של הצרכן ליעדים שצוינו או אם הוא לא נמצא מסיבה שצוינה ב-RouteStatus.
- (בטל) getRouteInfoForDestination: (GMSNavigationWaypoint *) היעד
withRoutingOptions: (GMSNavigationRoutingOptions *) routingOptions
קריאה חוזרת: (GMSRouteInfoCallback) התקשרות חזרה

מחזירה מידע על המסלול בהתאם לאסטרטגיית הניתוב: המסלול הטוב ביותר או קצר יותר כברירת מחדל.

הפונקציה מחזירה את הערך nil אם לפרויקט אין הרשאה לקרוא ל-API הזה.

פרמטרים:
חשבון יעדציון הדרך של היעד.
routingOptionsהאפשרויות המשמשות לאחזור פרטי המסלול. אסטרטגיית הניתוב ואסטרטגיית הנתיבים החלופיים לא נלקחות בחשבון מכיוון שהשיטה הזו מחזירה את פרטי המסלול עבור כל אסטרטגיות הניתוב.
קריאה חוזרת (callback)התקשרות חזרה כשמתקבל מידע על המסלולים.

הוּצא משימוש.

מפעילים את אחת מהשיטות -setDestinations:... עם הרשימה החדשה של היעדים, במקום לקרוא לשיטה הזו.

הצגת היעד הראשון מרשימת היעדים הנוכחית. בעקבות השיחה הזו, אם יהיה רלוונטי, נפנה אותך ליעד הבא.

החזרות:
ההנחיה בנקודת הדרך נמצאת עכשיו לעבר, או אפס אם לא נשארו ציוני דרך.
הערה:
השיטה הזו הוצאה משימוש. במקום זאת, יש להשתמש באחת מהשיטות -setDestinations:...
- (ביטול) clearDestinations

ניקוי כל היעדים שהוגדרו בעבר והסרת המסלולים המחושבים מהמפה.

אם ההנחיה פעילה, היא תפסיק לפעול באופן אוטומטי.

- (NSTimeInterval) timeToWaypoint: (GMSNavigationWaypoint *) נקודת יעד

מחזירה את הזמן המשוער לנקודת הציון הנתונה, או CLTimeIntervalMax אם נקודת הדרך אינה חלק מהמסלול הנוכחי.

כל עוד ההנחיה פעילה, הוא מתעדכן על סמך מיקום המכשיר הנוכחי.

הפונקציה מחזירה את הערך CLTimeIntervalMax אם ציון הדרך שצוין אינו יעד במסלול הנוכחי.

- (שמירת מרחק) distanceToWaypoint: (GMSNavigationWaypoint *) נקודת יעד

מחזירה את המרחק המשוער לנקודת הציון הנתונה, או CLLocation הגנה Max אם ציון הדרך אינו חלק מהמסלול הנוכחי.

כל עוד ההנחיה פעילה, הוא יעודכן על סמך מיקום המכשיר הנוכחי.

הפונקציה מחזירה את מרחק התצוגה CLLocationDurationMax אם ציון הדרך שצוין אינו יעד במסלול הנוכחי.

- (ביטול) setTransactionIDs: (NSArray< NSString * > *) transactionIDs
errorHandler: (פונקציית ה-null GMSNavigationTransactionIDErrorHandler) errorHandler [שגיאה]

מגדיר ורושם בשרת את מזהי הטרנזקציות השוטפים שחלים על אירועי הניווט במהלך סשן הניווט הנוכחי.

מזהי העסקאות יימחקו בסיום סשן הניווט.

פרמטרים:
transactionIDsמזהי העסקאות שחלים על סשן הניווט הנוכחי. מזהה העסקה חייב להיות ייחודי לכל עסקה הניתנת לחיוב. מזהה עסקה יכול להכיל לפחות תו אחד, ולכל היותר 64 תווים. הרשימה יכולה להיות ריקה כשעסקה מסתיימת (אבל הסשן עדיין נמשך).
errorHandlerחסימה שמופעלת באופן אסינכרוני ב-thread הראשי במקרה של שגיאה כשמזהי העסקאות לא חוקיים.

- (typedef void(^ GMSRouteStatusCallback)(GMSRouteStatus routerStatus) ) [related]

ההתראה הזו מוצגת כשנמצא מסלול ממיקום המכשיר ליעדים שצוינו או כשהמערכת לא מזהה אותו מסיבה שצוינה ב-RouteStatus.

- (typedef void(^ GMSRouteInfoCallback)(GMSNavigationRouteInfo *_Nullable pathInfo) [related]

היא נקראת כאשר מחושב פרטי המסלול (זמן הגעה משוער ומרחק) לנקודת הדרך שצוינה.

פרמטרים:
routeInfoפרטי המסלול ליעד הנתון. אם החישוב ייכשל, הערך יהיה 0.
- (typedef void(^ GMSNavigationTransactionIDErrorHandler)(NSError *error)) [related]

מתבצעת קריאה אם ההגדרה של מזהי עסקאות באמצעות setTransactionIDs נכשלת.

מידע נוסף זמין בתיעוד של ה-API.


תיעוד נכס

- (BOOL) avoidsHighways [read, write, assign]

האם להימנע מכבישים מהירים בעת יצירת מסלולים ליעדים.

ברירת המחדל היא 'לא'.

- (BOOL) avoidsTolls [read, write, assign]

האם להימנע מכבישי אגרה בעת יצירת מסלולים ליעדים.

ברירת המחדל היא 'לא'.

- (BOOL) avoidsFerries [read, write, assign]

האם להימנע ממעבורות בעת יצירת מסלולים ליעדים.

ברירת המחדל היא 'כן'.

מגדירים הגבלה לפי לוחית רישוי לפי הספרה האחרונה של לוחית רישוי וקוד מדינה.

כך אנחנו יכולים לנסוע מסביב לסוגים מסוימים של הגבלות בכבישים שמבוססות על מספר לוחית הרישוי. הדבר יחול רק על קריאות ל-setDestinations לאחר שהערך הזה הוגדר. מומלץ להגדיר זאת מיד אחרי שמקבלים את כלי הניווט.

אם אין הגבלה על לוחית רישוי, יש להגדיר את הערך nil. ברירת המחדל היא nil.

- (BOOL) guidanceActive [read, write, assign]

אם הוראות מסלול מפורטות מופעלות כרגע.

אם ההנחיה 'פעיל' היא 'כן' אבל אין מסלול זמין כרגע, ההנחיה תתחיל כשהמסלול יהיה זמין. המאפיין הזה יוגדר כ-NO אם קוראים ל-clearDestinations, או שנגיע לנקודת ציון.

- (BOOL) stopGuidanceAtArrival [read, write, assign]

אם ההנחיה תיפסק אוטומטית כשמתבצעת קריאה ל--navigator:didcomingAtWaypoint:.

אם האפשרות 'לא', כותרת הניווט העליונה והתחתונה ימשיכו להופיע אחרי ההגעה. בכותרת הניווט ימשיך להופיע שלב ההנחיה הסופי. הכותרת התחתונה של הניווט תמשיך לעדכן את הזמן שנותר והמרחק שנותר עד שתגיעו הזמן או המרחק של 0. בנוסף, העדכונים -navigator:didUpdateUpdateTime ו--navigator:didUpdate הכבוד היסטורי יימשכו. צריך להגדיר במפורש את הערך guidanceActive 'לא' כדי להפסיק את ההנחיה ואת עדכוני הזמן/המרחק שנותרו.

אם האפשרות 'כן' מופעלת, הערך של guidanceActive יוגדר אוטומטית לערך 'לא' בעת ההגעה.

ברירת המחדל היא 'כן'.

- (NSTimeInterval) timeUpdateThreshold [read, write, assign]

השינוי המינימלי בזמן המשוער עד ליעד הבא שיפעיל קריאה לשיטה navigator:didUpdateRemainingTime:.

אם המדיניות מוגדרת לערך NSTimeIntervalMax, הקריאות החוזרות (callback) של עדכוני הזמן יושבתו. אם הערך שהוגדר הוא שלילי, המערכת תשתמש בסף ברירת המחדל של שנייה אחת. ברירת המחדל היא שנייה אחת.

הערה:
המערכת מתעלמת מהערך הזה אם אין מאזינים שמטמיעים את navigator:didUpdateRemainingTime:.
- (CLLocation להתעדכן) distanceUpdateThreshold [read, write, assign]

השינוי המינימלי במרחק המשוער ליעד הבא שיפעיל קריאה לשיטה navigator:didUpdateRemainingDistance:.

אם המדיניות הזו מוגדרת לערך CLLocation הגנה, הקריאות החוזרות (callback) של עדכוני מרחק יושבתו. אם הערך הזה מוגדר לערך שלילי, המערכת תשתמש בסף ברירת המחדל של מטר אחד. ברירת המחדל היא מטר אחד.

הערה:
המערכת מתעלמת מהערך הזה אם אין מאזינים שמטמיעים את navigator:didUpdateRemainingDistance:.
- (NSTimeInterval) timeToNextDestination [read, assign]

מחזירה את הזמן המשוער עד ליעד הבא.

כל עוד ההנחיה פעילה, הוא יעודכן על סמך מיקום המכשיר הנוכחי.

הפונקציה מחזירה את הערך CLTimeIntervalMax אם אין מסלול זמין.

- (CLLocation :) distanceToNextDestination [read, assign]

מחזירה את המרחק המשוער מהיעד הבא.

כל עוד ההנחיה פעילה, הוא יעודכן על סמך מיקום המכשיר הנוכחי.

הפונקציה מחזירה את מרחק התצוגה CLLocationDurationMax אם לא נמצא מסלול זמין.

- (GMSNavigationDelayCategory) delayCategoryToNextDestination [read, assign]

מחזירה את קטגוריית העיכוב ליעד הבא.

כל עוד ההנחיה פעילה, הוא יעודכן על סמך מיקום המכשיר הנוכחי.

הפונקציה מחזירה את GMSNavigationDelayCategoryNoData אם אין מסלול זמין או אם נתוני התנועה לא זמינים.

- (GMSRouteLeg*) currentRouteLeg [read, assign]

החלק הנוכחי של המסע.

המיקום ההתחלתי של GMSRouteLeg הזה הוא המיקום האחרון הידוע (המצב 'מוצמד לכביש') של המכשיר.

- (NSArray<GMSRouteLeg *>*) routeLegs [read, assign]

מערך של קטעי מסלול שבהם כל רגל תואמת ליעד שהוגדר.

- (GMSPath*) traveledPath [read, assign]

הנתיב שהמכשיר עבר מאז הפעם האחרונה ש-guideActive הוגדר ל'כן'.

אם ההנחיה עוד לא התחילה, הנתיב הזה ריק. הנתיב כולל את המיקום המוצמד לכביש כפי שהוא הוחזר על ידי GMSRoadSnappedLocationProvider, אבל הוא פשוט להסיר נקודות מיותרות. לדוגמה, הפיכת נקודות קוליניאריות עוקבות לקטע קו יחיד.

- (GMSNavigationVoiceGuidance) voiceGuidance [read, write, assign]

הגדרה זו קובעת אם יש להפעיל הנחייה קולית עבור עומסי תנועה והתראות פנייה אחר פנייה.

ברירת המחדל היא GMSNavigationVoiceGuidanceAlertsAndGuidance.

הגדרה זו קובעת באילו התקני אודיו ניתן להפעיל הנחייה קולית.

ברירת המחדל היא GMSVoiceGuidanceAudioDeviceTypeBluetooth.

- (BOOL) vibrationEnabled [read, write, assign]

הגדרה זו קובעת אם המכשיר ירטוט גם כשמופעלות התראות קוליות.

- (BOOL) sendsBackgroundNotifications [read, write, assign]

המדיניות הזו קובעת אם ההגדרות של UILocalNotifications שמכילות מידע על הנחיות יוצגו כשהאפליקציה פועלת ברקע.

ברירת המחדל היא 'כן'.

מצב התאורה המוצע על סמך השעה ביום ומיקום המכשיר.

- (BOOL) shouldDisplayPrompts [read, write, assign]

המדיניות הזו קובעת אם יוצגו בקשות לגבי עומסי תנועה, מסלולים טובים יותר ותקריות.

ברירת המחדל היא 'כן'.

GMSNavigationSpeedAlertOptions להתאמה אישית של ערכי הסף להפעלה עבור GMSNavigationSpeedAlertSeverity.

אפשר להשתמש במאפיין הזה כדי להתאים אישית את ערכי הסף להצגת התראות מהירות, באחוזים, גם להתראות קלות וגם להתראות ראשיות. אפשר להשתמש בשיטה הזו גם כדי להתאים אישית את סף ההפעלה של ההתראות במקרה של התראה על מהירות חמורה.

אם מגדירים את הערך 'אפס', לא יתקבלו נתוני פיד לגבי מהירות מופרזת. בהתרעת המהירות שהוגדרה כברירת מחדל ב-NavSDK תופיע טקסט אדום כשהמהירות גבוהה מ-5 קמ"ש או 10 קמ"ש מהמהירות המותרת, ויוצגו טקסט לבן ורקע אדום אם המהירות גבוהה מ-20 קמ"ש.