مخطط عنوان URL في "خرائط Google" لنظام التشغيل iOS

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

على الأجهزة التي تعمل بنظام iOS 9 والإصدارات الأحدث، يمكنك استخدام الروابط العامة لتشغيل خرائط Google عند توفّر عنوان URL لخرائط Google.

يمكنك استخدام مخطط عناوين URL لخرائط Google لتشغيل تطبيق خرائط Google لنظام التشغيل iOS وإجراء عمليات البحث، والحصول على طلبات الاتجاهات، وعرض طرق عرض الخريطة. عند تشغيل خرائط Google، يتم إرسال معرّف الحزمة تلقائيًا كجزء من الطلب.

لست بحاجة إلى مفتاح واجهة برمجة تطبيقات Google لاستخدام مخطط عنوان URL لخرائط 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 باستخدام مخطط عنوان 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://");
}

عرض خريطة

استخدم مخطط عنوان 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&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 لرد الاتصال

إذا كنت تريد تحديد عنوان 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 لرد الاتصال.

  1. تأكّد من أنّ تطبيقك قد سجّل مخطَّط عنوان URL يمكنه الاستجابة لطلب معاودة الاتصال.
  2. مرِّر تصنيف زر معاودة الاتصال في المعلَمة x-source.
  3. مرِّر عنوان 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&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 واطلب الاتجاهات إلى مطار جون إف كينيدي الدولي في مدينة نيويورك. اترك عنوان البدء فارغًا لطلب الاتجاهات من الموقع الجغرافي الحالي للمستخدم.
  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. إذا كنت تريد استخدام معاودة الاتصال، يمكنك تضمين المعلمتين 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