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

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

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

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

לא צריך מפתח Google API כדי להשתמש בסכימה של כתובות URL במפות 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"]];

סקירה כללית

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

  • הפיצ'רים comgooglemaps:// ו-comgooglemaps-x-callback:// מאפשרים להשתמש בהם כדי לפתוח את אפליקציית מפות Google ל-iOS ולבצע אחת מהפעולות הבאות:

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

    • כתובת ה-URL המקורית יכולה להיות של maps.google.com, או של google.com/maps, או באמצעות כל דומיין מדינה חוקי ברמה העליונה במקום com. אפשר גם להעביר goo.gl/maps כתובות URL להפניה אוטומטית.
    • תוכלו לבצע קריאה חוזרת (callback) באמצעות הפרמטרים x-source ו-x-success עם סכימת כתובת ה-URL של comgooglemapsurl://.

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

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

comgooglemaps://?parameters

או:

comgooglemaps-x-callback://?parameters

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

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

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

Swift

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

Objective-C

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

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

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://");
}

הצגת מפה

השתמש בסכימת כתובת האתר כדי להציג את המפה ברמת המיקום או המיקום שצוינו. אפשר גם להוסיף שכבות-על של תצוגות אחרות מעל למפה או להציג תמונות של 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.

כתובת ה-URL לדוגמה מציגה מסלול לתחבורה ציבורית בין שדה התעופה של ניו יורק לנמל התעופה 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

ציון כתובת URL לקריאה חוזרת (callback)

כדי לציין כתובת URL לקריאה חוזרת (callback), צריך להשתמש בסכימה comgooglemaps-x-callback://. הסכימה הזו תואמת למפרט x-callback-url. כשמתקשרים לאפליקציה של מפות Google ל-iOS בסכימה הזאת, בחלק העליון של המסך יוצג לחצן. הקשה על הלחצן הזה תוביל לקריאה חוזרת (callback) לכתובת URL שציינתם.

בקשות לטופס comgooglemaps-x-callback:// חייבות להיות בפורמט הבא:

comgooglemaps-x-callback://?parameters

פרמטרים

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

  • x-source — שם האפליקציה ששולחת את בקשת ה-x-callback. עדיף להשתמש בשמות קצרים.
  • x-success — כתובת ה-URL שאליה יש להתקשר בסיום התהליך. לעתים קרובות מדובר בסכימת כתובות URL לאפליקציה שלכם, כדי לאפשר למשתמשים לחזור לאפליקציה המקורית.

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

  1. עליך לוודא שהאפליקציה שלך רשמה סכימת URL שיכולה להגיב לבקשה לקריאה חוזרת (callback).
  2. העבר את התווית של לחצן הקריאה החוזר בפרמטר x-source.
  3. מעבירים את כתובת ה-URL לקריאה חוזרת (callback) בפרמטר x-success.

הדוגמה הבאה תפעיל את האפליקציה מפות Google ל-iOS ותציג מפה שבמרכזה ניו יורק. באפליקציה יוצג גם הלחצן 'SourceApp'. כשלוחצים על הלחצן "SourceApp", אפליקציית מפות Google ל-iOS מעבירה קריאה חוזרת לזיוף של כתובת URL, sourceapp://?resume=true.

comgooglemaps-x-callback://?center=40.765819,-73.975866&zoom=14
   &x-success=sourceapp://?resume=true
   &x-source=SourceApp

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

Swift

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

Objective-C

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

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

comgooglemaps-x-callback://?q=dessert&center=37.759748,-122.427135
   &x-success=sourceapp://?resume=true
   &x-source=Nom+Nom

אנחנו מוסיפים את הניווט לאפליקציה שלך

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

קטע הקוד הזה מראה איך להשתמש בסכימת comgooglemaps-x-callback:// כדי לבקש מסלול הגעה, ואז לחזור לאפליקציה כשהמשתמש מוכן. הקוד יבצע את הפעולות הבאות:

  1. יש לוודא שסכימת כתובת ה-URL של comgooglemaps-x-callback:// זמינה.
  2. פותחים את אפליקציית מפות Google ל-iOS ומבקשים מסלול לשדה התעופה JFK בניו יורק. יש להשאיר את כתובת ההתחלה ריקה כדי לבקש מסלול מהמיקום הנוכחי של המשתמש.
  3. להוסיף לחצן עם התווית "AirApp" לאפליקציית מפות Google ל-iOS. תווית הלחצן מוגדרת על ידי הפרמטר x-source.
  4. צריך להתקשר לסכימת הפיקטיביות sourceapp:// של כתובת ה-URL כשהמשתמשים לוחצים על הלחצן 'הקודם'.

Swift

let testURL = URL(string: "comgooglemaps-x-callback://")!
if UIApplication.shared.canOpenURL(testURL) {
  let directionsRequest = "comgooglemaps-x-callback://" +
    "?daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York" +
    "&x-success=sourceapp://?resume=true&x-source=AirApp"

  let directionsURL = URL(string: directionsRequest)!
  UIApplication.shared.openURL(directionsURL)
} else {
  NSLog("Can't use comgooglemaps-x-callback:// on this device.")
}

Objective-C

NSURL *testURL = [NSURL URLWithString:@"comgooglemaps-x-callback://"];
if ([[UIApplication sharedApplication] canOpenURL:testURL]) {
  NSString *directionsRequest = @"comgooglemaps-x-callback://" +
      @"?daddr=John+F.+Kennedy+International+Airport,+Van+Wyck+Expressway,+Jamaica,+New+York" +
      @"&x-success=sourceapp://?resume=true&x-source=AirApp";
  NSURL *directionsURL = [NSURL URLWithString:directionsRequest];
  [[UIApplication sharedApplication] openURL:directionsURL];
} else {
  NSLog(@"Can't use comgooglemaps-x-callback:// on this device.");
}

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

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

  1. החלפת הסכימה http:// או https:// ב-comgooglemapsurl://.
  2. אם רוצים להשתמש בקריאה חוזרת (callback), צריך לכלול את הפרמטרים x-source ו-x-success. סכימה זו פועלת בהתאם למפרט x-callback-url.

פורמטים נתמכים של כתובות 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:"comgooglemaps-x-callback://")!)

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

דוגמה לבקשת מסלול אל מגדל טוקיו עם פונקציית callback:

כתובת URL מקורית של מפות Google:

http://maps.google.com/maps?f=d&daddr=Tokyo+Tower,+Tokyo,+Japan&sll=35.6586,139.7454&sspn=0.2,0.1&nav=1

הדוגמה הבאה תפעיל את האפליקציה מפות Google ל-iOS ותציג מפה עם הוראות הגעה למגדל טוקיו כפי שמצוין בכתובת האתר המקורית של מפות Google (למעלה). באפליקציה יוצג גם לחצן עם הכיתוב "SourceApp". כשלוחצים על הלחצן "SourceApp", אפליקציית מפות Google ל-iOS שולחת קריאה חוזרת לזיוף של כתובת URL, sourceapp://?resume=true.

comgooglemapsurl://maps.google.com/maps?f=d&daddr=Tokyo+Tower,+Tokyo,+Japan&sll=35.6586,139.7454&sspn=0.2,0.1&nav=1
    &x-source=SourceApp
    &x-success=sourceapp://?resume=true