במכשירים עם iOS מגרסה 9 ואילך, אפשר להשתמש בקישורים אוניברסליים כדי להפעיל את מפות Google כשיש לכם כתובת URL של מפות Google.
אפשר להשתמש בפורמט של כתובת ה-URL של מפות Google כדי להפעיל את אפליקציית מפות Google ל-iOS ולבצע חיפושים, לקבל בקשות לקבלת מסלול ולהציג תצוגות מפה. כשאתם פותחים את מפות Google, מזהה החבילה נשלח באופן אוטומטי כחלק מהבקשה.
אין צורך במפתח API של Google כדי להשתמש בסכימת כתובת ה-URL של מפות Google.
קישורים אוניברסליים ומפות 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 או מאפליקציית אינטרנט. אפשר להגדיר אפשרויות בכתובת ה-URL שיועברו לאפליקציה שתופעל. באפליקציית מפות Google ל-iOS יש תמיכה בפורמטים הבאים של כתובות URL:
comgooglemaps://
ו-comgooglemaps-x-callback://
– התוכניות האלה מאפשרות להפעיל את אפליקציית מפות Google ל-iOS ולבצע אחת מכמה פעולות:- הצגת מפה במיקום ובמרחק מצוינים.
- חיפוש מיקומים או מקומות והצגתם במפה.
- לבקש מסלול ממקום אחד למקום אחר. אפשר לקבל מסלולים לארבעה אמצעי תחבורה: נהיגה, הליכה, רכיבה על אופניים ותחבורה ציבורית.
- מוסיפים ניווט לאפליקציה.
- ב-iOS 8, אפשר להפעיל קריאה חוזרת כשהאפליקציה מסתיימת באמצעות
comgooglemaps-x-callback://
. לרוב משתמשים בקריאות חזרה (callbacks) כדי להחזיר משתמש לאפליקציה שבה מפות Google ל-iOS נפתחה במקור. שימו לב שב-iOS 9, המערכת מספקת באופן אוטומטי קישור 'חזרה אל' בפינה הימנית של שורת הסטטוס.
comgooglemapsurl://
– התוכנית הזו מאפשרת להפעיל את אפליקציית מפות Google ל-iOS באמצעות כתובת URL שמבוססת על אתר מפות Google למחשב. כך תוכלו לספק למשתמשים חוויית שימוש מקורית בנייד, במקום פשוט לטעון את אתר מפות Google.- כתובת ה-URL המקורית יכולה להיות של
maps.google.com
, או שלgoogle.com/maps
, או של כל דומיין ברמה העליונה חוקי של מדינה במקוםcom
. אפשר גם להעבירgoo.gl/maps
כתובות URL להפניה אוטומטית. - אפשר להפעיל קריאה חוזרת באמצעות הפרמטרים
x-source
ו-x-success
עם הסכימה של כתובת ה-URLcomgooglemapsurl://
.
- כתובת ה-URL המקורית יכולה להיות של
הפעלת אפליקציית מפות 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://");
}
הצגת מפה
שימוש בסכימת כתובת ה-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
חיפוש
אפשר להשתמש בתוכנית הזו כדי להציג שאילתות חיפוש במיקום ספציפי בחלון התצוגה.
פרמטרים
בנוסף לפרמטרים שמשמשים להצגת מפה, בחיפוש Google יש תמיכה בפרמטר q
.
q
: מחרוזת השאילתה לחיפוש.
כתובת ה-URL הזו משמשת לחיפוש 'פיצה' בסביבת המיקום שצוין:
comgooglemaps://?q=Pizza¢er=37.759748,-122.427135
דוגמאות נוספות:
comgooglemaps://?q=Steamers+Lane+Santa+Cruz,+CA¢er=37.782652,-122.410126&views=satellite,traffic&zoom=15
comgooglemaps://?q=Google+Japan,+Minato,+Tokyo,+Japan¢er=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¢er=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¢er=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 מקבלת את אותם פרמטרים כמו הסכימה של כתובת ה-URL מסוג comgooglemaps://
, עם הפרמטרים הנוספים הבאים. חובה לציין את שני הפרמטרים.
x-source
– השם של האפליקציה ששולחת את הבקשה ל-x-callback. עדיף לבחור שמות קצרים.x-success
— כתובת ה-URL שאליה צריך לשלוח קריאה בסיום. בדרך כלל זו תהיה סכימה של כתובת URL לאפליקציה שלכם, שמאפשרת למשתמשים לחזור לאפליקציה המקורית.
חשוב לזכור: האפליקציה תצטרך לרשום סכמת כתובת URL משלה כדי שתוכל להגיב לכתובת ה-URL לקריאה חוזרת.
- מוודאים שהאפליקציה רשמה סכימה של כתובת URL שיכולה להגיב לבקשת הקריאה החוזרת.
- מעבירים את התווית של לחצן הקריאה החוזרת בפרמטר
x-source
. - מעבירים את כתובת ה-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 זמינה במכשיר ותומכת בסכימת כתובת ה-URL 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¢er=37.759748,-122.427135
&x-success=sourceapp://?resume=true
&x-source=Nom+Nom
הוספת ניווט לאפליקציה
הפעלת אפליקציית מפות Google ל-iOS עם בקשה לקבלת מסלול היא דרך קלה לתת למשתמשים גישה לניווט מפורט מהאפליקציה. אפשר להשתמש בסכמות כתובות ה-URL comgooglemaps://
או comgooglemaps-x-callback://
.
קטע הקוד הזה מראה איך להשתמש בסכימה comgooglemaps-x-callback://
כדי לבקש מסלול, ואז לחזור לאפליקציה כשהמשתמש מוכן. הקוד יבצע את הפעולות הבאות:
- מוודאים שסכמת כתובות ה-URL
comgooglemaps-x-callback://
זמינה. - פותחים את אפליקציית מפות Google ל-iOS ומבקשים מסלול אל נמל התעופה JFK בניו יורק. כדי לבקש מסלול מהמיקום הנוכחי של המשתמש, משאירים את כתובת ההתחלה ריקה.
- הוספת לחצן עם הכיתוב 'AirApp' לאפליקציית מפות Google ל-iOS. תווית הלחצן מוגדרת באמצעות הפרמטר
x-source
. - קוראים לסכמה הבדיונית של כתובת ה-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, וכך לספק למשתמשים את חוויית השימוש המקורית הטובה ביותר.
- מחליפים את ערכת הצבעים
http://
אוhttps://
ב-comgooglemapsurl://
. - אם רוצים להשתמש בקריאה חוזרת (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 תפיק קריאה חוזרת לסכמה של כתובת 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