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