تشغيل نموذج التطبيق: iOS - Xcode (Swift أو Objective-C)

يغطي هذا التشغيل السريع كيفية تشغيل نموذج تطبيق Azure Spatial Anchors لأجهزة iOS باستخدام Xcode (Swift أو Objective-C). Azure Spatial Anchors عبارة عن خدمة للمطورين عبر المنصات تتيح لك إنشاء تجارب واقع مختلط باستخدام كائنات تستمر في موقعها عبر الأجهزة بمرور الوقت. عند الانتهاء، سيكون لديك تطبيق ARKit iOS يمكنه حفظ وترسيخ مرساة مكانية.

ستتعلم كيفية:

  • إنشاء حساب المراسي المكانية
  • تكوين معرف حساب Spatial Anchors ومفتاح الحساب
  • النشر والعمل على جهاز iOS

إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.

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

لإكمال هذا التشغيل السريع، تأكد من أن لديك:

  • قام مطور بتمكين جهاز macOS مع أحدث إصدار من Xcode وCocoaPods مثبت.
  • تم تثبيت Git عبر HomeBrew:
    1. أدخل الأمر التالي في سطر واحد من المحطة الطرفية: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)".
    2. تشغيل brew install git وbrew install git-lfs.
    3. تحديث تكوين git مع git lfs install (للمستخدم الحالي) أو git lfs install --system (للنظام بأكمله).
  • قام مطور بتمكين جهاز IOS متوافق مع ARKit.

إنشاء مورد Spatial Anchors

انتقل إلى مدخل Azure.

في الجزء الأيسر، حدد Create a resource.

استخدم مربع البحث للبحث عن Spatial Anchors.

Screenshot showing the results of a search for Spatial Anchors.

حدد Spatial Anchors، ثم حدد Create.

في جزء Spatial Anchors Account قم بتنفيذ ما يلي:

  • أدخل اسماً فريداً للمورد باستخدام أحرف أبجدية رقمية عادية.

  • قم بتحديد الاشتراك الذي تريد إرفاق المورد به.

  • إنشاء مجموعة الموارد عن طريق تحديد Create new. قم بتسميتها myResourceGroup، ثم حدد OK.

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

  • قم بتحديد موقع (منطقة) لوضع المورد فيه.

  • حدد Create لبدء إنشاء المورد.

Screenshot of the Spatial Anchors pane for creating a resource.

بعد إنشاء المورد، يظهر مدخل Microsoft Azure اكتمال عملية النشر.

Screenshot showing that the resource deployment is complete.

حدِّد الانتقال إلى المورد. يمكنك الآن أن تعرض خصائص المورد.

نسخ قيمة Account ID للمورد إلى محرر النص لاستخدامها لاحقا.

Screenshot of the resource properties pane.

أيضاً قم بنسخ قيمة Account Domain للمورد إلى محرر النص لاستخدامها لاحقا.

Screenshot showing the resource's account domain value.

ضمن "Settings"، حددAccess key. نسخ قيمتي Primary key وAccount Key إلى محرر النص لاستخدامهما لاحقا.

Screenshot of the Keys pane for the account.

فتح نموذج المشروع

استخدم المحطة الطرفية لتنفيذ الإجراءات التالية.

نسخ مستودع العينات بتشغيل الأوامر التالية:

git clone https://github.com/Azure/azure-spatial-anchors-samples.git
cd ./azure-spatial-anchors-samples

تثبيت المجموعات اللازمة باستخدام CocoaPods:

الانتقال إلى iOS/Swift/.

cd ./iOS/Swift/

تشغيل pod install --repo-update لتثبيت CocoaPods للمشروع.

إشعار

استخدم الأمر التالي إذا كان لديك macOS Monterey (12.2.1)

تشغيل pod update لتثبيت CocoaPods للمشروع.

الآن افتح .xcworkspace في Xcode.

إشعار

اطلع على خطوات استكشاف الأخطاء وإصلاحها هنا إذا كنت تواجه مشكلات CocoaPod بعد الترقية إلى macOS Catalina (10.15).

open ./SampleSwift.xcworkspace

تكوين معرف الحساب والمفتاح

الخطوة التالية هي تكوين التطبيق لاستخدام معرف الحساب ومفتاح الحساب. لقد قمت بنسخها في محرر نصوص عند إعداد مورد Spatial Anchors.

افتح iOS/Swift/SampleSwift/ViewControllers/BaseViewController.swift.

حدد موقع الحقل spatialAnchorsAccountKey واستبدل Set me بمفتاح الحساب.

حدد موقع الحقل spatialAnchorsAccountId واستبدل Set me بمعرف الحساب.

حدد موقع الحقل spatialAnchorsAccountDomain واستبدل Set me بنطاق الحساب.

انشر التطبيق على جهاز iOS

الاتصال جهاز iOS إلى Mac وتعيين النظام النشط على جهاز iOS.

Select the device

حدد إنشاء ثم قم بتشغيل النظام الحالي.

Deploy and run

إشعار

إذا لاحظت library not found for -lPods-SampleObjC خطًأ، فمن المحتمل أنك فتحت .xcodeproj الملف بدلاً من .xcworkspace . افتح .xcworkspace ثم حاول مرة أخرى.

في Xcode، أوقف التطبيق بالضغط على إيقاف.

استكشاف الأخطاء وإصلاحها

مشكلات CocoaPods على macOS Catalina (10.15)

إذا قمت مؤخراً بتحديث macOS Catalina (10.15) وتم تثبيت CocoaPods مسبقاً، فقد تكون CocoaPods في حالة تعطل وتفشل في تكوين المجموعات وملفات المشروع بشكل .xcworkspace صحيح. لحل هذه المشكلة، ستحتاج إلى إعادة تثبيت CocoaPods عن طريق تشغيل الأوامر التالية:

brew update
brew install cocoapods --build-from-source
brew link --overwrite cocoapods

تعطل التطبيق عند النشر إلى iOS 10.3.1 من ملف تعريف توفير شخصي / حساب مطور

إذا قمت بنشر تطبيق iOS الخاص بك على iOS 10.3.1 من ملف تعريف توفير شخصي / حساب مطور، فقد ترى هذا الخطأ: Library not loaded: @rpath/ADAL....

لحل الخطأ:

  • استخدم ملف تعريف توفير غير ملف تعريف الفريق الشخصي (حساب مطور مدفوع).
  • نشر التطبيق الخاص بك إلى جهاز iOS يقوم بتشغيل إصدار iOS 13.3 أو إصدار أحدث، أو لمن يقوم بتشغيل iOS 13.4 beta أو تحرير إصدار.
  • اقرأ المزيد حول هذه المشكلة على تجاوز سعة المكدّس.

تنظيف الموارد

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

من قائمة مدخل Microsoft Azure أو من Home، حدد Resource groups. بعد ذلك، في صفحة مجموعات الموارد، حدد "myResourceGroup".

في صفحة myResourceGroup، تأكد من أن الموارد المدرجة هي التي تريد حذفها.

حدد حذف مجموعة الموارد واكتب myResourceGroup في مربع النص للتأكيد، ثم حدد حذف.

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

لقد أنشأت في بدء التشغيل السريع هذا حساب Spatial Anchors. ثم أعددت تطبيقاً ونشرته لحفظ المراسي المكانية واستدعائها. لمعرفة المزيد حول كيفية تحسين التطبيق لتتمكن من مشاركة المراسي المكانية مع الأجهزة الأخرى، تابع البرنامج التعليمي التالي.