تفعيل واجهة برمجة التطبيقات Geospatial API لتطبيق Unity (AR Foundation) الذي يستهدف iOS

اضبط إعدادات تطبيقك ليتمكّن من استخدام Geospatial API.

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

قبل المتابعة، تأكد من فهم مفاهيم الواقع المعزّز الأساسية وكيفية ضبط جلسة ARCore.

راجِع مقدمة عن واجهة برمجة التطبيقات الجغرافية المكانية للحصول على مزيد من المعلومات حول واجهة برمجة التطبيقات الجيوفضائية.

إذا كنت حديث العهد بتطوير البرامج باستخدام ARCore، فراجع البدء للحصول على معلومات حول متطلبات البرامج والأجهزة والمتطلبات الأساسية والمعلومات الأخرى الخاصة بالأنظمة الأساسية التي تستخدمها.

لاستخدام واجهة برمجة التطبيقات ARCore Geospatial API، يجب أن يتوافق مشروعك مع AR Foundation وARCoreextensions for AR Foundation.

تفعيل ARCore API

قبل استخدام نظام تحديد المواقع المرئي (VPS) في تطبيقك، يجب أولاً تفعيل ARCore API في مشروع جديد أو حالي على Google Cloud. وهذه الخدمة مسؤولة عن استضافة علامات الارتساء الجيوفضائية وتخزينها وحلها.

ويُفضَّل استخدام التفويض بدون مفتاح، ولكن يمكن أيضًا استخدام تفويض مفتاح واجهة برمجة التطبيقات.

إضافة المكتبات المطلوبة إلى تطبيقك

بعد السماح لتطبيقك بطلب واجهة برمجة التطبيقات ARCore، يجب إضافة مكتبات لتفعيل الميزات الجيوفضائية في تطبيقك.

  1. انتقِل إلى Edit (تعديل) > Project Settings (إعدادات المشروع) > XR Plug-In Management (إدارة مكوّن XR الإضافي) > ARCore متوفّرة (إضافات ARCore). تأكَّد من اختيار مفعّلة دعم iOS.
  2. ضمن الميزات الاختيارية، اختَر الموقع الجغرافي.

تفعيل الإمكانات الجيوفضائية في إعداد الجلسة

بعد تفعيل الوظيفة الجيوفضائية في تطبيقك، يجب تفعيل الإمكانات الجيوفضائية في إعدادات جلسة الواقع المعزّز في تطبيقك ليتمكن التطبيق من التواصل مع ARCore API:

  1. تأكّد من أن مجلد Assets في المشروع يحتوي على عنصر النص البرمجي ARCoreExtensionsConfig. لإنشاء ملف شخصي، انقر بزر الماوس الأيمن في لوحة Assets (مواد العرض) واختَر Create (إنشاء) > XR > ARCoreextensions Config.
  2. اختر الكائن القابل للنص البرمجي ARCoreExtensionsConfig في مجلد مواد العرض واضبط الوضع الجغرافي المكاني على مفعّل.

  3. اضبط كائن اللعبة ARCoreextensions لاستخدام الإعداد ARCoreExtensionsConfig. في لوحة الهياكل، حدِّد موقع كائن اللعبة ARCore البحري الذي أنشأته عند ضبط إضافات ARCore في البداية، واربط حقل ضبط إضافات ARCore بالكائن القابل للبرمجة ARCoreExtensionsConfig في مجلد Assets.

طلب السماح باستخدام بيانات الجهاز

يجب أن تقدّم التطبيقات التي تستخدم واجهة برمجة التطبيقات ARCore Geospatial API للمستخدم رسالة تطلب منه الإقرار باستخدام البيانات من جهازه والسماح باستخدامه. راجع متطلبات خصوصية المستخدم للحصول على مزيد من المعلومات.

التحقّق من توافق الجهاز

لا تتيح بعض الأجهزة التي تتيح استخدام ARCore استخدام واجهة برمجة التطبيقات Geospatial API. للتحقّق من توافق جهاز المستخدم، يُرجى الاتصال بـ AREarthManager.IsGeospatialModeSupported(). إذا عرض هذا الإجراء FeatureSupported.Unsupported، لا تحاول ضبط الجلسة.

طلب أذونات تحديد الموقع الجغرافي في وقت التشغيل من المستخدم

لتمكين خدمات الموقع الجغرافي في Unity في نص برمجي يؤدي إلى تشغيل طلبات أذونات وقت التشغيل، عليك إجراء ما يلي:

  1. في "Project Settings > iOS > Other Settings > Location Usage Description"، أدخِل اسم التطبيق الذي يطلب الأذونات.

  2. قم بتمكين خدمات موقع Unity لتشغيل طلب إذن وقت التشغيل، على النحو التالي:

    public void OnEnable()
    {
        Input.location.Start();
    }
    
    public void OnDisable()
    {
        Input.location.Stop();
    }
    

    يمكنك الاطّلاع على مستندات Unity LocationService للحصول على مزيد من المعلومات.

التحقّق من مدى توفّر المواقع الجغرافية المكانية في الموقع الجغرافي الحالي للجهاز

بما أنّ واجهة برمجة التطبيقات Geospatial API تستخدم مزيجًا من VPS ونظام تحديد المواقع العالمي (GPS) لتحديد وضعية جيوفضائية، يمكن استخدام واجهة برمجة التطبيقات ما دام الجهاز قادرًا على تحديد موقعه الجغرافي. في المناطق ذات الدقة المنخفضة لنظام تحديد المواقع العالمي (GPS)، مثل المساحات الداخلية والبيئات الحضرية الكثيفة، ستعتمد واجهة برمجة التطبيقات على تغطية VPS لإنشاء وضعيات عالية الدقة. في ظل الظروف العادية، من المتوقع أن يوفر VPS دقة موضعية تبلغ 5 أمتار تقريبًا، ودقة دوران تبلغ 5 درجات. استخدِم AREarthManager.CheckVpsAvailability() لتحديد ما إذا كان موقع جغرافي معيّن تتوفّر فيه تغطية لبرنامج الشراء بالجملة (VPS).

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

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