סכימה של כתובת URL של מפות Google ל-iOS

במכשירים עם iOS מגרסה 9 ואילך, אפשר להשתמש בקישורים אוניברסליים כדי להפעיל את מפות Google כשמופיעה כתובת URL של מפות Google.

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

לא צריך מפתח Google API כדי להשתמש ב-URL scheme של מפות Google.

אפליקציית מפות Google ל-iOS תומכת בקישורים אוניברסליים במכשירים עם iOS מגרסה 9 ואילך.

אם כתובת ה-URL שלכם תואמת לביטוי הרגולרי הבא, ובמכשיר פועלת מערכת iOS מגרסה 9 ואילך, כדאי לשקול שימוש ישיר בשיטה openURL:.

(http(s?)://)?
((maps\.google\.{TLD}/)|
 ((www\.)?google\.{TLD}/maps/)|
 (goo.gl/maps/))
.*

לדוגמה,

Swift

UIApplication.shared.openURL(URL(string:"https://www.google.com/maps/@42.585444,13.007813,6z")!)

Objective-C

[[UIApplication sharedApplication] openURL:
   [NSURL URLWithString:@"https://www.google.com/maps/@42.585444,13.007813,6z"]];

סקירה כללית

סכימת כתובות URL מאפשרת להפעיל אפליקציית iOS מאפליקציית iOS אחרת או מאפליקציית אינטרנט. אפשר להגדיר אפשרויות בכתובת האתר שמועברות לאפליקציה שהופעלה. אפליקציית Google Maps ל-iOS תומכת בסכימות ה-URL הבאות:

  • comgooglemaps:// – סכימת ה-URL הזו מאפשרת להפעיל את אפליקציית מפות Google ל-iOS ולבצע אחת מכמה פעולות:

    • הצגת מפה במיקום מסוים וברמת זום מסוימת.
    • חיפוש מיקומים או מקומות והצגתם במפה.
    • לבקש מסלול ממיקום אחד למיקום אחר. אפשר לקבל מסלולים לארבעה אמצעי תחבורה: נהיגה, הליכה, רכיבה על אופניים ותחבורה ציבורית.
    • הוספת ניווט לאפליקציה.
  • comgooglemapsurl:// – סכימה שמאפשרת להפעיל את אפליקציית מפות Google ל-iOS באמצעות כתובת URL שנוצרה מאתר מפות Google למחשב. המשמעות היא שאתם יכולים לספק למשתמשים חוויה בנייד במקום לטעון את האתר של מפות Google.

    • כתובת ה-URL המקורית יכולה להיות maps.google.com, או google.com/maps, או כל דומיין חוקי ברמה העליונה של מדינה במקום com. אפשר גם להעביר goo.gl/maps כתובות URL להפניה אוטומטית.

הפעלת האפליקציה של מפות Google ל-iOS וביצוע פונקציה ספציפית

כדי להפעיל את אפליקציית מפות Google ל-iOS ולבצע באופן אופציונלי אחת מהפונקציות הנתמכות, משתמשים בסכמת כתובות URL מהצורה הבאה:

comgooglemaps://?parameters

בהמשך המאמר מפורטים הפרמטרים.

בודקים את הזמינות של אפליקציית מפות Google במכשיר

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

Swift

UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)

Objective-C

[[UIApplication sharedApplication] canOpenURL:
    [NSURL URLWithString:@"comgooglemaps://"]];

לדוגמה, כדי להציג מפה של סנטרל פארק בניו יורק, אפשר להשתמש בקוד הבא:

Swift

if (UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!)) {
  UIApplication.shared.openURL(URL(string:
    "comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic")!)
} else {
  print("Can't use comgooglemaps://");
}

Objective-C

if ([[UIApplication sharedApplication] canOpenURL:
     [NSURL URLWithString:@"comgooglemaps://"]]) {
  [[UIApplication sharedApplication] openURL:
   [NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]];
} else {
  NSLog(@"Can't use comgooglemaps://");
}

הצגת מפה

אפשר להשתמש בסכימת כתובות ה-URL כדי להציג את המפה ברמת זום ובמיקום ספציפיים. אפשר גם להוסיף שכבות של תצוגות אחרות על המפה או להציג תמונות Street View.

פרמטרים

כל הפרמטרים הבאים הם אופציונליים. אם לא מוגדרים פרמטרים, סכימת כתובת ה-URL תפעיל את אפליקציית מפות Google ל-iOS.

  • center: זו נקודת המרכז של אזור התצוגה במפה. הפורמט הוא מחרוזת של latitude,longitude שמופרדת באמצעות פסיקים.
  • mapmode: הגדרת סוג המפה שמוצגת. הערך יכול להיות standard או streetview. אם לא מציינים את ההגדרה, המערכת תשתמש בהגדרות הנוכחיות של האפליקציה.
  • views: הפעלה או השבתה של תצוגות ספציפיות. אפשר להגדיר את הערכים הבאים: satellite,‏ traffic או transit. אפשר להגדיר כמה ערכים באמצעות פסיק להפרדה. אם הפרמטר מצוין ללא ערך, כל התצוגות ינוקו.
  • zoom: מציין את רמת הזום של המפה.

בדוגמה הזו של כתובת URL מוצגת מפה עם מרכז בניו יורק ברמת זום 14, עם תצוגת מצב התנועה מופעלת:

comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic

מפת התנועה של ניו יורק

דוגמאות נוספות:

comgooglemaps://?center=37.788463,-122.392545&zoom=12
comgooglemaps://?center=46.414382,10.013988&mapmode=streetview

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

פרמטרים

בנוסף לפרמטרים שמשמשים להצגת מפה, החיפוש תומך בפרמטר q.

  • q: מחרוזת השאילתה לחיפוש.

דוגמה לכתובת URL לחיפוש 'פיצה' במיקום שצוין:

comgooglemaps://?q=Pizza&center=37.759748,-122.427135

פיצה בקרבת מקום

דוגמאות נוספות:

comgooglemaps://?q=Steamers+Lane+Santa+Cruz,+CA&center=37.782652,-122.410126&views=satellite,traffic&zoom=15
comgooglemaps://?q=Google+Japan,+Minato,+Tokyo,+Japan&center=35.660888,139.73073&zoom=15&views=transit

הצגת מסלולים

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

פרמטרים

  • saddr: הגדרת נקודת ההתחלה לחיפושים של מסלולים. זה יכול להיות קו רוחב,קו אורך או כתובת בפורמט של שאילתה. אם מדובר במחרוזת שאילתה שמחזירה יותר מתוצאה אחת, התוצאה הראשונה תיבחר. אם לא מציינים ערך, המיקום הנוכחי של המשתמש ישמש כמיקום ברירת המחדל.
  • daddr: הגדרת נקודת הסיום של חיפושי מסלולים. יש לו את אותו פורמט ואותה התנהגות כמו saddr.
  • directionsmode: אמצעי התחבורה. אפשר להגדיר את הערך של המאפיין הזה ל: driving,‏ transit, ‏ bicycling או walking.

בדוגמה הבאה מוצגות הוראות הגעה בתחבורה ציבורית בין Google NYC לבין נמל התעופה JFK:

comgooglemaps://?saddr=Google+Inc,+8th+Avenue,+New+York,+NY&daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York&directionsmode=transit

מסלול תחבורה ציבורית

דוגמאות נוספות:

comgooglemaps://?saddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA+94043&daddr=Google+Inc,+345+Spear+Street,+San+Francisco,+CA&center=37.422185,-122.083898&zoom=10
comgooglemaps://?saddr=2025+Garcia+Ave,+Mountain+View,+CA,+USA&daddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA,+United+States&center=37.423725,-122.0877&directionsmode=walking&zoom=17

הוספת ניווט לאפליקציה

הפעלת אפליקציית מפות Google ל-iOS עם בקשה להוראות הגעה נותנת למשתמשים גישה להוראות ניווט מפורטות מהאפליקציה שלכם. אפשר להשתמש בcomgooglemaps:// סכימת כתובות ה-URL.

הפעלת אפליקציית מפות Google ל-iOS מכתובת URL של מפות Google במחשב

אם לאפליקציה שלכם יש גישה לכתובת URL קיימת של מפות Google, למשל בדף אינטרנט או במסד נתונים, אתם יכולים להשתמש בסכימה הזו כדי לפתוח את כתובת ה-URL באפליקציית מפות Google ל-iOS, וכך להציע למשתמשים שלכם את חוויית השימוש הכי טובה בנייד.

  • מחליפים את הסכימה http:// או https:// בסכימה comgooglemapsurl://.

פורמטים נתמכים של כתובות URL במפות Google

הסכימה comgooglemapsurl:// תומכת בכתובות URL שתואמות לביטוי הרגולרי הזה, כאשר {TLD} מתייחס לכל דומיין חוקי ברמה העליונה של מדינה. הוספנו מעברי שורה כדי שהטקסט יהיה ברור יותר:

(http(s?)://)?
((maps\.google\.{TLD}/)|
 ((www\.)?google\.{TLD}/maps/)|
 (goo.gl/maps/))
.*

בדיקת הזמינות של אפליקציית מפות Google

קודם צריך לוודא שאפליקציית מפות Google ל-iOS זמינה במכשיר ותומכת בסכימת כתובות ה-URL:

Swift

UIApplication.shared.canOpenURL(URL(string:"comgooglemapsurl://")!)

Objective-C

[[UIApplication sharedApplication] canOpenURL:
   [NSURL URLWithString:@"comgooglemapsurl://"]];

דוגמאות

דוגמה לכתובת URL כללית במפות Google:

כתובת ה-URL המקורית במפות Google:

https://www.google.com/maps/preview/@42.585444,13.007813,6z

שימוש בסכימת כתובת ה-URL:

comgooglemapsurl://www.google.com/maps/preview/@42.585444,13.007813,6z

דוגמה לכתובת URL כללית במפות Google:

כתובת ה-URL המקורית במפות Google:

https://maps.google.com/?q=@37.3161,-122.1836

שימוש בסכימת כתובת ה-URL:

comgooglemapsurl://maps.google.com/?q=@37.3161,-122.1836