دليل البدء السريع لميزة "الموقع الجغرافي المكاني" على نظام التشغيل iOS

يوضّح لك دليل البدء السريع لواجهة برمجة التطبيقات ARCore Geospatial API كيفية تشغيل نموذج تطبيق في Xcode يوضّح واجهة برمجة التطبيقات Geospatial API.

للحصول على دليل حول تطوير تطبيقك باستخدام Geospatial API، يُرجى الاطّلاع على دليل المطوّر بشأن البيانات الجغرافية في نظام التشغيل iOS.

اطّلِع على مقدمة عن ARCore Geospatial API للحصول على مزيد من المعلومات حول Geospatial API.

إذا كنت حديث العهد بالتطوير باستخدام ARCore، اطّلِع على البدء.

المتطلبات الأساسية

  • الإصدار 13.0 من Xcode أو إصدار أحدث
  • Cocoapods 1.4.0 أو إصدار أحدث في حال استخدام Cocoapods
  • جهاز Apple متوافق مع ARKit يعمل بالإصدار 12.0 من نظام التشغيل iOS أو إصدار أحدث (يجب أن يكون هدف النشر هو الإصدار 12.0 من نظام التشغيل iOS أو إصدار أحدث)

إعداد التطبيق النموذجي

يصف مشروع GeospatialExample المُدرَج مع حزمة تطوير البرامج (SDK) لـ ARCore لنظام التشغيل iOS الرمز الذي يستدعي واجهة برمجة التطبيقات Geospatial API.

  1. يمكنك استنساخ أو تنزيل حزمة تطوير البرامج (SDK) لـ ARCore لنظام التشغيل iOS من GitHub للحصول على نموذج رمز التطبيق.

  2. افتح نافذة Terminal أو Finder وانتقِل إلى المجلد الذي نسخت فيه حزمة SDK أو نزّلتها.

  3. انتقِل إلى المجلد arcore-ios-sdk-master/Examples.

  4. افتح مجلد Examples (الأمثلة)، واختَر المجلد GeospatialExample (مثال على البيانات المكانية)، ثم انقر على Open (فتح).

إعداد مشروع على Google Cloud

قبل استخدام نظام تحديد الموقع البصري (VPS) في تطبيقك، عليك أولاً تفعيل ARCore API في مشروع جديد أو حالي على Google Cloud. على الرغم من أنّ واجهة برمجة التطبيقات Geospatial API تعمل مع كل من الإذنَين "بدون مفتاح" و"مفتاح واجهة برمجة التطبيقات"، يُرجى استخدام طريقة "مفتاح واجهة برمجة التطبيقات" في دليل البدء السريع هذا.

إعداد التفويض

لإجراء طلبات بيانات من واجهة برمجة التطبيقات Geospatial API إلى الخادم الظاهري، يحتاج نموذج التطبيق إلى تفويض، ويحق له استخدام مفتاح واجهة برمجة تطبيقات غير محدود. إذا كنت تستخدِم مفتاح واجهة برمجة تطبيقات محظورًا، يجب أيضًا تقديم معرّف حِزمة لربطه بمفتاح واجهة برمجة التطبيقات.

  1. في XCode، في نموذج التطبيق GeospatialExample، افتح الملف ViewController.m وابحث عن your-api-key.

  2. أضِف مفتاح واجهة برمجة التطبيقات إلى GARSession: الصِق مفتاح واجهة برمجة التطبيقات الذي نسخته من إحدى الخطوات السابقة فوق النص your-api-key (اترك علامتَي الاقتباس)، كما هو موضح:

    self.garSession = [GARSession sessionWithAPIKey:@"your-api-key"
                                   bundleIdentifier:nil
                                              error:&error];
    

إعداد حزمة تطوير البرامج (SDK) من ARCore

يتم شحن تطبيق GeospatialExample مع Podfile تم ضبطه مسبقًا باستخدام حزمة تطوير البرامج (SDK) لـ ARCore وإصدارات iOS التي تحتاج إليها. لتثبيت هذه التبعيات، افتح نافذة Terminal وشغِّل pod install من المجلد الذي يتوفّر فيه مشروع Xcode.

يؤدي ذلك إلى إنشاء ملف .xcworkspace ستستخدمه لاحقًا لإنشاء التطبيق وتشغيله.

إنشاء تطبيق النموذج وتشغيله

  1. في Xcode، اختَر ملف مساحة العمل GeospatialExample، ثم انقر على Signing & Capabilities (التوقيع والإمكانات).

  2. ضَع علامة في المربّع إدارة التوقيع تلقائيًا.

  3. في الحقل الفريق، أدخِل اسم فريق.

    يمكنك استخدام معرِّف الحزمة التلقائي لتشغيل التطبيق من Xcode، ولكن عليك تغييره إذا كنت تستخدم GeospatialExample كنموذج لتطبيقك في مرحلة الإنتاج.

  4. وصِّل جهازك لتشغيل التطبيق التجريبي.

  5. أنشئ تطبيق GeospatialExample وشغِّله من ملف .xcworkspace لبدء استخدامه على جهازك.

    لتجنُّب أخطاء التصميم، تأكَّد من أنّك تُنشئ التطبيق من ملف .xcworkspace وليس من ملف .xcodeproj.

من المفترض أن تتمكّن من رؤية عرض الكاميرا، بالإضافة إلى معلومات تصحيح الأخطاء التي تصف التحويل الجغرافي الحالي لجهازك. أثناء فحص البيئة حولك، لاحظ أنّ قيم الثقة في دقة تحديد الموقع الجغرافي قد تتغيّر أثناء التنقّل، إذا كنت في منطقة تتوفّر فيها ميزة "تحديد الموقع الجغرافي بالاستناد إلى نقطة مرجعية ثابتة".

عندما يكون ARCore متأكدًا من الموقع الجغرافي لجهازك واتجاهه، يمكنك وضع مرساة في موقعك الجغرافي الحالي باستخدام التحويل المكاني الجغرافي.

قد تكون دقة تحديد الموقع الجغرافي منخفضة جدًا في حال عدم توفّر معلومات VPS. يجب أن يكون التطبيق متصلاً بالإنترنت، ويجب أن يكون الموقع الجغرافي معروفًا لخدمة الخادم الافتراضي. للحصول على أفضل النتائج، يجب تشغيل نموذج التطبيق في الهواء الطلق (وليس في الداخل) خلال ساعات النهار.

بالإضافة إلى ذلك، إذا كنت في منطقة لا تتيح استخدام VPS أو إذا لم تكن إشارات GPS كافية، قد تحتاج إلى تعديل حدود الثقة في التطبيق من أجل وضع علامة مرجعية.

لضبط الحدود الدنيا:

  1. في Xcode، افتح ملف ViewController.m وانتقِل إلى القسم التالي:

    // Thresholds for 'good enough' accuracy. These can be tuned for the
    // application. We use both 'low'
    // and 'high' values here to avoid flickering state changes.
    static const CLLocationAccuracy kHorizontalAccuracyLowThreshold = 10;
    static const CLLocationAccuracy kHorizontalAccuracyHighThreshold = 20;
    static const CLLocationDirectionAccuracy kHeadingAccuracyLowThreshold = 15;
    static const CLLocationDirectionAccuracy kHeadingAccuracyHighThreshold = 25;
    
  2. عدِّل هذه القيم حسب الحاجة. وكلما ارتفعت القيمة، قلت الدقة.

    يؤدي خفض الدقة إلى منح التطبيق مساحة أكبر لوضع علامة مرجعية. اطّلِع على تعديل دقة التحويل للحصول على مزيد من المعلومات.

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

راجِع دليل المطوّر بشأن البيانات الجغرافية لنظام التشغيل iOS، ثم ابدأ عملية الإنشاء باستخدام Geospatial API.