إعداد مشروع Xcode

بعد تفعيل الفوترة وإنشاء مفتاح لواجهة برمجة التطبيقات، عليك إعداد مشروع Xcode الذي تستخدمه لتطوير تطبيقك.

تتوفّر ملاحظات الإصدار لكل إصدار.

الخطوة 1: تثبيت البرامج المطلوبة

لإنشاء مشروع باستخدام حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS، نزِّل وثبِّت ما يلي:

  • ‫Xcode الإصدار 26.0 أو الإصدارات الأحدث

الخطوة 2: إنشاء مشروع Xcode وتثبيت حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS

يختلف حجم تثبيت حزمة SDK. على سبيل المثال، يبلغ حجم التثبيت للإصدار 9.0 من حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS حوالي 18 ميغابايت.

Swift Package Manager

يمكن تثبيت حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS من خلال Swift Package Manager. لإضافة حزمة SDK، تأكَّد من إزالة أي تبعيات حالية لحزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS.

لإضافة حزمة SDK إلى مشروع جديد أو حالي، اتّبِع الخطوات التالية:

  1. افتح Xcode project‏ أو workspace، ثم انتقِل إلى ملف > إضافة موارد الاعتمادية للحزمة (File > Add Package Dependencies).
  2. أدخِل https://github.com/googlemaps/ios-maps-sdk كعنوان URL، واضغط على Enter لجلب الحزمة، ثم انقر على "إضافة حزمة".
  3. لتثبيت version معيّن، اضبط الحقل قاعدة الاعتمادية على أحد الخيارات المستندة إلى الإصدار. بالنسبة إلى المشاريع الجديدة، ننصحك بتحديد أحدث إصدار واستخدام الخيار "الإصدار الدقيق". بعد إتمام الخطوة السابقة، انقر على "إضافة حزمة".
  4. من نافذة اختيار منتجات الحزمة، تأكَّد من أنّه سيتم إضافة GoogleMaps (بالنسبة إلى الإصدارات الأقدم من 9.0.0، تأكَّد من إضافة GoogleMaps وGoogleMapsBase وGoogleMapsCore) إلى هدف main المحدّد. بعد إتمام الخطوة السابقة، انقر على "إضافة حزمة".
  5. للتحقّق من عملية التثبيت، انتقِل إلى لوحة الإعدادات العامة الخاصة بالهدف. في الأطر والمكتبات والمحتوى المضمّن، يجب أن تظهر الحِزم المثبَّتة. يمكنك أيضًا الاطّلاع على قسم "توابع الحزمة" في "مستكشف المشاريع" للتحقّق من الحزمة وإصدارها.

لتعديل package لمشروع حالي، اتّبِع الخطوات التالية:

  1. إذا كنت بصدد الترقية من إصدار أقدم من 9.0.0، عليك إزالة موارد الاعتمادية التالية: GoogleMapsBase وGoogleMapsCore وGoogleMapsM4B بعد الترقية. لا تُزِل الاعتمادية الخاصة بـ GoogleMaps. لمزيد من المعلومات، يُرجى الاطّلاع على ملاحظات الإصدار 9.0.0.

    من إعدادات ضبط مشروع Xcode، ابحث عن الأطر والمكتبات والمحتوى المضمّن. استخدِم علامة الطرح(-) لإزالة إطار العمل التالي:

    • GoogleMapsBase (للترقية من إصدارات أقدم من 9.0.0 فقط)
    • GoogleMapsCore (للترقية من إصدارات أقدم من 9.0.0 فقط)
    • GoogleMapsM4B (للترقية من إصدارات أقدم من 9.0.0 فقط)
  2. من Xcode، انتقِل إلى ملف > الحِزم > التحديث إلى أحدث إصدارات الحِزم (File > Packages > Update To Latest Package Versions).
  3. للتحقّق من عملية التثبيت، انتقِل إلى قسم متطلبات الحزمة في مستكشف المشاريع للتحقّق من الحزمة وإصدارها.

لإزالة موارد الاعتمادية الحالية لحزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS التي تمت إضافتها باستخدام CocoaPods، اتّبِع الخطوات التالية:

  1. أغلِق مساحة عمل Xcode. افتح الوحدة الطرفية ونفِّذ الأمر التالي:
    sudo gem install cocoapods-deintegrate cocoapods-clean
    pod deintegrate
    pod cache clean --all
  2. أزِل Podfile وPodfile.resolved وworkspace في Xcode إذا كنت لا تستخدمها لأي غرض آخر غير CocoaPods.
لإزالة حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS المثبَّتة يدويًا، اتّبِع الخطوات التالية:
  1. من إعدادات ضبط مشروع Xcode، ابحث عن الأطر والمكتبات والمحتوى المضمن. استخدِم علامة الطرح (-) لإزالة إطار العمل التالي:
    • GoogleMaps
    • GoogleMapsBase (لعمليات التثبيت الأقدم من الإصدار 9.2.0 فقط)
    • GoogleMapsCore (لعمليات التثبيت الأقدم من الإصدار 9.2.0 فقط)
    • GoogleMapsM4B (لعمليات التثبيت التي تمت قبل الإصدار 9.0.0 فقط)
  2. من دليل المستوى الأعلى لمشروع Xcode، أزِل الحزمة GoogleMaps.

التثبيت اليدوي

يوضّح هذا الدليل كيفية إضافة XCFrameworks التي تحتوي على حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS إلى مشروعك يدويًا، وكيفية ضبط إعدادات الإصدار في Xcode. ‫XCFramework هي حزمة ثنائية يمكنك استخدامها على منصات متعددة، بما في ذلك الأجهزة التي تستخدم معالج Apple.

  1. نزِّل ملفات SDK الثنائية وملفات الموارد التالية:
  2. استخرِج الملفات للوصول إلى XCFrameworks والموارد.
  3. إذا لم يكن لديك مشروع Xcode بعد، أنشئ مشروعًا الآن واحفظه على جهازك. إذا كنت مبتدئًا في تطوير تطبيقات iOS:
    1. أنشِئ مشروعًا جديدًا.
    2. اختَر نموذج iOS > التطبيق.
    3. في شاشة خيارات المشروع:
      1. أدخِل اسم المشروع.
      2. سجِّل قيمة حقل معرّف الحزمة. يمكنك استخدام هذه القيمة لفرض قيود على مفتاح واجهة برمجة التطبيقات أدناه.
      3. اضبط واجهة المشروع على Storyboard.
      4. اضبط اللغة على Swift أو Objective-C.
  4. افتح علامة التبويب عام. اسحب XCFrameworks التالية إلى مشروعك ضمن الأطر والمكتبات والمحتوى المضمّن. احرص على اختيار عدم التضمين:
    • GoogleMaps.xcframework
  5. انسخ GoogleMaps.bundle من GoogleMapsResources الذي نزّلته إلى الدليل الأعلى مستوى في مشروع Xcode. احرص على اختيار نسخ العناصر إلى مجلد المجموعة الوجهة عندما يُطلب منك ذلك.
  6. اختَر مشروعك من "مستكشف المشروع" (Project Navigator)، ثم اختَر هدف تطبيقك.
  7. افتح علامة التبويب مراحل الإنشاء (Build Phases) الخاصة بهدف تطبيقك. في ربط الملفات الثنائية بالمكتبات (Link Binary with Libraries)، أضِف أُطر العمل والمكتبات التالية:
    • Accelerate.framework
    • Contacts.framework
    • CoreData.framework
    • CoreGraphics.framework
    • CoreImage.framework
    • CoreLocation.framework
    • CoreTelephony.framework
    • CoreText.framework
    • GLKit.framework
    • ImageIO.framework
    • libc++.tbd
    • libz.tbd
    • Metal.framework
    • MetricKit.framework
    • OpenGLES.framework (في حال استخدام OpenGL فقط)
    • QuartzCore.framework
    • Security.framework
    • SystemConfiguration.framework
    • UIKit.framework
  8. اختَر مشروعك بدلاً من هدف محدّد، وافتح علامة التبويب إعدادات الإنشاء. في قسم الربط - عام -> علامات الرابط الأخرى، أضِف -ObjC إلى "تصحيح الأخطاء" و "الإصدار". إذا لم تظهر هذه الإعدادات، غيِّر الفلتر في شريط إعدادات الإنشاء من أساسي إلى الكل.

  9. لتثبيت حزمة Places SDK for iOS XCFramework، راجِع مقالة البدء في استخدام حزمة Places SDK for iOS.

الخطوة 3: إضافة مفتاح واجهة برمجة التطبيقات إلى المشروع

في القسم الحصول على مفتاح واجهة برمجة تطبيقات، أنشأت مفتاح واجهة برمجة تطبيقات لتطبيقك. والآن، عليك إضافة هذا المفتاح إلى مشروع Xcode.

في الأمثلة التالية، استبدِل YOUR_API_KEY بمفتاح واجهة برمجة التطبيقات.

Swift

أضِف مفتاح واجهة برمجة التطبيقات إلى AppDelegate.swift على النحو التالي:

  1. أضِف عبارة الاستيراد التالية:
    import GoogleMaps
  2. أضِف ما يلي إلى طريقة application(_:didFinishLaunchingWithOptions:) باستخدام مفتاح واجهة برمجة التطبيقات:
    GMSServices.provideAPIKey("YOUR_API_KEY")
  3. إذا كنت تستخدم أيضًا Places API، أضِف مفتاحك مرة أخرى كما هو موضّح هنا:
    GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

Objective-C

أضِف مفتاح واجهة برمجة التطبيقات إلى AppDelegate.m على النحو التالي:

  1. أضِف عبارة الاستيراد التالية:
    @import GoogleMaps;
  2. أضِف ما يلي إلى طريقة application:didFinishLaunchingWithOptions: باستخدام مفتاح واجهة برمجة التطبيقات:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];
  3. إذا كنت تستخدم أيضًا Places API، أضِف مفتاحك مرة أخرى كما هو موضّح هنا:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

الخطوة 4 (اختيارية): فحص ملف بيان الخصوصية في Apple

تتطلّب Apple توفير تفاصيل خصوصية التطبيق للتطبيقات على App Store. يمكنك الانتقال إلى صفحة "تفاصيل الخصوصية" في Apple App Store للاطّلاع على آخر الأخبار والمزيد من المعلومات.

يتم تضمين ملف بيان الخصوصية من Apple في حزمة الموارد الخاصة بحزمة SDK. للتحقّق من تضمين ملف بيان الخصوصية وفحص محتواه، أنشئ أرشيفًا لتطبيقك وأنشئ تقرير خصوصية من الأرشيف.

الخطوة 5 (اختيارية): الإفصاح عن مخططات عناوين URL التي تستخدمها واجهة برمجة التطبيقات

بدءًا من نظام التشغيل iOS 9 وXcode 7، تعلن التطبيقات عن مخططات عناوين URL التي تنوي فتحها من خلال تحديد المخططات في ملف Info.plist الخاص بالتطبيق. تفتح حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS تطبيق "خرائط Google" للأجهزة الجوّالة عندما ينقر المستخدم على شعار Google على الخريطة، وبالتالي يمكن لتطبيقك الإعلان عن مخططات عناوين URL ذات الصلة.

للإعلان عن مخططات عناوين URL التي تستخدمها حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS، أضِف الأسطر التالية إلى Info.plist:

 <key>LSApplicationQueriesSchemes</key>
 <array>
        <string>googlechromes</string>
        <string>comgooglemaps</string>
    </array>

تعرِض الصورة التالية الإعدادات في واجهة مستخدم Xcode:

إعداد `LSApplicationQueriesSchemes` في Xcode

في حال عدم توفّر البيان أعلاه، يمكن أن تحدث الأخطاء التالية عندما ينقر المستخدم على شعار Google على الخريطة:

  • -canOpenURL: failed for URL: "comgooglemaps://" - error: "This app is not allowed to query for scheme comgooglemaps"
  • -canOpenURL: failed for URL: "googlechromes://" - error: "This app is not allowed to query for scheme googlechromes"

لإزالة هذه الأخطاء، أضِف البيان إلى Info.plist.

الخطوات التالية

بعد الحصول على مفتاح واجهة برمجة تطبيقات ومشروع Xcode، يمكنك إنشاء التطبيقات وتشغيلها. تقدّم حزمة تطوير البرامج للتنقّل على أجهزة iOS العديد من البرامج التعليمية والتطبيقات النموذجية التي تساعدك على البدء. لمزيد من التفاصيل، راجِع: