במכשירים עם 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://
. לעיתים קרובות משתמשים בקריאות חוזרות (callback) כדי להחזיר משתמש לאפליקציה שפותחה במקור את מפות Google ל-iOS. שימו לב שב-iOS 9, המערכת מספקת באופן אוטומטי קישור 'Back to' (חזרה אל) בפינה השמאלית של שורת הסטטוס.
comgooglemapsurl://
- התוכנית הזו מאפשרת להפעיל את אפליקציית מפות Google ל-iOS באמצעות כתובת URL שנגזרת מהאתר של מפות Google למחשב. המשמעות היא שאתה יכול לספק למשתמשים חוויה מקורית בנייד במקום לטעון את האתר של מפות Google.- כתובת ה-URL המקורית יכולה להיות עבור
maps.google.com
, או עבורgoogle.com/maps
, או באמצעות כל דומיין מדינה חוקי ברמה העליונה במקוםcom
. אפשר גם להעביר ל-goo.gl/maps
כתובות URL להפניה אוטומטית. - אפשר לבצע קריאה חוזרת (callback) באמצעות הפרמטרים
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 ניו יורק לנמל התעופה 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 לקריאה חוזרת (callback), צריך להשתמש
בסכמת כתובת ה-URL comgooglemaps-x-callback://
. הסכמה זו תואמת למפרט של כתובת ה-URL של x-callback. כשקוראים לאפליקציית מפות Google ל-iOS עם סכימה כזו, יוצג לחצן בחלק העליון של המסך. הקשה על הלחצן הזה תפעיל קריאה חוזרת (callback) לכתובת ה-URL שציינתם.
בקשות ל-comgooglemaps-x-callback://
חייבות להיות בצורה:
comgooglemaps-x-callback://?parameters
פרמטרים
סכימת כתובת ה-URL מסוג x-callback מקבלת את אותם פרמטרים כמו סכימת כתובת ה-URL comgooglemaps://
, עם הפרמטרים הנוספים הבאים. שני הפרמטרים נדרשים.
x-source
– שם האפליקציה ששולחת את בקשת ה-x-callback. עדיף להשתמש בשמות קצרים.x-success
— כתובת ה-URL שאליה יש להתקשר בסיום. לעיתים קרובות זו תהיה סכמה של כתובת URL של האפליקציה שלכם, שמאפשרת למשתמשים לחזור לאפליקציה המקורית.
שימו לב שהאפליקציה צריכה לרשום סכמה משלה של כתובת URL כדי שהיא תוכל להגיב לכתובת ה-URL לקריאה חוזרת.
- עליך לוודא שהאפליקציה שלך רשמה סכימת כתובת URL שיכולה להגיב לבקשה לקריאה חוזרת (callback).
- מעבירים את התווית של לחצן הקריאה החוזרת בפרמטר
x-source
. - מעבירים את כתובת ה-URL לקריאה חוזרת בפרמטר
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://
. - אם רוצים להשתמש בקריאה חוזרת, יש לכלול את הפרמטרים
x-source
ו-x-success
. הסכימה הזו פועלת בהתאם למפרט של כתובת ה-URL של x-callback.
פורמטים נתמכים של כתובות 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