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

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

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

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

אפליקציית מפות Google ל-iOS תומכת Universal קישורים במכשירים עם 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 או אפליקציית אינטרנט. אפשר להגדיר אפשרויות בכתובת ה-URL שיועברו אל שהאפליקציה הושקה. אפליקציית מפות Google ל-iOS תומכת בכתובת ה-URL הבאה סכמות:

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

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

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

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

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

comgooglemaps://?parameters

או:

comgooglemaps-x-callback://?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://");
}

הצגת מפה

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

פרמטרים

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

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

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

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

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

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

comgooglemaps-x-callback://?parameters

פרמטרים

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

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

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

  1. עליך לוודא שהאפליקציה שלך רשמה סכימת כתובת URL שיכולה להגיב לבקשת הקריאה החוזרת.
  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 זמינה במכשיר ותומכת את סכימת כתובת האתר x-callback. האפליקציה שלך יכולה לבדוק שסכימת כתובת ה-URL זמינה עם הקוד הבא:

Swift

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

Objective-C

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

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

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. קוראים לסכימה של כתובת ה-URL הפיקטיבית, sourceapp://, כשהמשתמש לוחץ על לחצן 'הקודם'.

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 מכתובת URL של מפות 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

דוגמה לבקשת מסלול למגדל טוקיו באמצעות x-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 ותציג מפה עם מסלול למגדל טוקיו, כפי שצוין בכתובת ה-URL המקורית של מפות Google (למעלה). באפליקציה יוצג גם לחצן עם התווית "SourceApp". כאשר ה-"SourceApp" לחיצה על לחצן, אפליקציית מפות Google ל-iOS הפעולה הזו תנפיק קריאה חוזרת (callback) לסכימה של כתובת 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