على الأجهزة التي تعمل بنظام iOS 9 والإصدارات الأحدث، يمكنك استخدام الروابط العامة لتشغيل خرائط Google عند توفّر عنوان URL لخرائط Google.
يمكنك استخدام مخطط عناوين URL لخرائط Google لتشغيل تطبيق خرائط Google لنظام التشغيل iOS وإجراء عمليات البحث، والحصول على طلبات الاتجاهات، وعرض طرق عرض الخريطة. عند تشغيل خرائط Google، يتم إرسال معرّف الحزمة تلقائيًا كجزء من الطلب.
لست بحاجة إلى مفتاح واجهة برمجة تطبيقات 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://
. وغالبًا ما يتم استخدام معاودة الاتصال لإرجاع مستخدم إلى التطبيق الذي فتح خرائط 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 لعرض الخريطة بمستوى تكبير وموقع محددين. يمكنك أيضًا تراكب طرق العرض الأخرى أعلى خريطتك، أو عرض صور "التجوّل الافتراضي".
المعلّمات
جميع المعلمات التالية اختيارية. إذا لم يتم تعيين أي معلمات، فسيتم تشغيل مخطط عنوان 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 لرد الاتصال
إذا كنت تريد تحديد عنوان URL لرد الاتصال، يجب استخدام مخطط عنوان URL في comgooglemaps-x-callback://
. ويتقيد هذا النظام بـ مواصفات x-callback-url. عند استدعاء تطبيق خرائط Google لنظام التشغيل iOS
لتنفيذ هذا النظام، سيعرض التطبيق زرًا في أعلى الشاشة. سيؤدي النقر على هذا الزر إلى إصدار معاودة الاتصال بعنوان URL الذي حددته.
يجب أن تكون الطلبات المرسَلة إلى comgooglemaps-x-callback://
على النحو التالي:
comgooglemaps-x-callback://?parameters
المعلّمات
يقبل مخطط عنوان URL لمعاودة الاتصال بـ x المعلمات نفسها مثل مخطط عنوان URL لـ comgooglemaps://
، مع المعلمات الإضافية التالية. كلتا المعلمتين مطلوبتين.
x-source
— اسم التطبيق الذي يرسل طلب معاودة الاتصال. يُفضل استخدام الأسماء المختصرة.x-success
— عنوان URL المطلوب الاتصال به عند الانتهاء. وغالبًا ما يكون ذلك مخططًا لعناوين URL لتطبيقك الخاص، مما يسمح للمستخدمين بالعودة إلى التطبيق الأصلي.
لاحظ أنه سيتعين على تطبيقك تسجيل مخطط عنوان URL الخاص به حتى يتمكن من الرد على عنوان URL لرد الاتصال.
- تأكّد من أنّ تطبيقك قد سجّل مخطَّط عنوان URL يمكنه الاستجابة لطلب معاودة الاتصال.
- مرِّر تصنيف زر معاودة الاتصال في المعلَمة
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. يمكن لتطبيقك التحقق من أن مخطط عنوان 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 واطلب الاتجاهات إلى مطار جون إف كينيدي الدولي في مدينة نيويورك. اترك عنوان البدء فارغًا لطلب الاتجاهات من الموقع الجغرافي الحالي للمستخدم.
- أضف زرًا يحمل اسم "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
. ويتقيد هذا النظام بـ مواصفات 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
مثال على طلب الاتجاهات إلى برج طوكيو باستخدام معاودة الاتصال:
عنوان 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