מדריך למתחילים לשימוש בעוגנים בענן ב-iOS

ARCore Cloud Anchor API, או שירות ARCore Cloud Anchor, מספק יכולות של עיגון בענן לאפליקציות ל-iOS, ומאפשר למשתמשים במכשירי iOS ו-Android לשתף חוויות AR.

במדריך הזה נסביר איך:

  • הגדרת סביבת הפיתוח לעבודה עם Cloud Anchors
  • ניסיון אירוח ופתרון של עוגנים באפליקציה לדוגמה

דרישות מוקדמות

  • Xcode מגרסה 13.0 ואילך
  • Cocoapods מגרסה 1.4.0 ואילך, אם משתמשים ב-Cocoapods
  • מכשיר Apple תואם ARKit עם iOS מגרסה 12.0 ואילך (נדרש יעד פריסה עם iOS מגרסה 12.0 ואילך)

שימוש ב-Cloud Anchors

בשלבים הבאים נעזר באפליקציית הדוגמה של Cloud Anchors כדי להראות את המשימות החיוניות להגדרה וליצירה של אפליקציה שתומכת ב-ARCore Cloud Anchors.

הורדת אפליקציית הדוגמה של Cloud Anchors

  1. כדי לקבל את קוד האפליקציה לדוגמה, משכפלים או מורידים את ARCore SDK ל-iOS מ-GitHub.

  2. פותחים חלון Terminal או Finder ועוברים לתיקייה שבה קלונתם או הורדתם את ה-SDK.

  3. קוד האפליקציה לדוגמה מופיע ב-
    /arcore-ios-sdk-master/Examples/CloudAnchorExample.

    קוד האפליקציה לדוגמה של עוגנים עמידים בענן נמצא ב-
    /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample.

הגדרת סשן

האפליקציה לדוגמה מבצעת את המשימות החשובות הבאות כחלק מהגדרת הסשן:

הגדרת שיתוף של מזהה עוגן ב-Cloud

באפליקציית הדוגמה של Cloud Anchors נעשה שימוש ב-Firebase כדי לשתף מזהי Cloud Anchor בין מכשירים. אתם יכולים להשתמש בפתרון אחר באפליקציות שלכם.

כדי להגדיר את מסד הנתונים של Firebase באפליקציה לדוגמה:

  1. פועלים לפי ההוראות של Firebase להוספת Firebase לאפליקציה.
  2. מורידים את הקובץ GoogleService-Info.plist שנוצר כחלק מהוספת Firebase לאפליקציה.
  3. מפעילים את האחסון ב-Firebase לדוגמה:
    • נכנסים למסוף Firebase ובוחרים את הפרויקט שהגדרתם לאפליקציה לדוגמה.
    • בוחרים את הלוח Database.
    • לוחצים על Get Started לצד האפשרות Realtime Database.
    • התפריט Security rules for Realtime Database נפתח.
      • כדי להריץ את הדוגמה, בוחרים באפשרות Start in test mode.
      • חשוב לזכור: אם אתם משתמשים ב-Firebase לאפליקציה שאתם מתכננים לפרסם, כדאי להשתמש בכללי אבטחה מגבילים יותר.
  4. ב-Xcode, מוסיפים את הקובץ GoogleService-Info.plist לאפליקציה לצד Info.plist.

הגדרת ARCore API

כדי להשתמש ב-Cloud Anchors, קודם צריך להגדיר את ARCore API באפליקציה.

הרצת עדכון של pod

האפליקציה CloudAnchorExample מגיעה עם קובץ Podfile שהוגדרה בו מראש הגרסה של ARCore SDK ו-iOS שנדרשות לכם. כדי להתקין את יחסי התלות האלה:

  1. פותחים חלון Terminal ומפעילים את pod update מהתיקייה שבה נמצא פרויקט Xcode.
    הפעולה הזו יוצרת קובץ .xcworkspace שמשמש מאוחר יותר ליצירת ה-build ולהרצת האפליקציה.

במאמר הוספת ARCore SDK לאפליקציה מוסבר איך להגדיר את Podfile באפליקציות שלכם.

  1. פותחים את קובץ ה-.xcworkspace של הפרויקט ב-Xcode.

    כדי להימנע משגיאות build, חשוב לוודא שאתם מבצעים build מהקובץ .xcworkspace ולא מהקובץ .xcodeproj.

שינוי מזהה החבילה של האפליקציה

ב-Xcode, משנים את מזהה החבילה של האפליקציה כדי שתוכלו לחתום על האפליקציה עם הצוות.

פיתוח והרצה של האפליקציה

  1. מחברים את המכשיר ומפעילים את האפליקציה ב-Xcode.

  2. (אופציונלי) אם אתם מפתחים ומפעילים את האפליקציה לדוגמה, תוכלו לקרוא בקטע הבא איך משתמשים באפליקציה כדי לארח ולפתור צ'אנקורים ב-Cloud.

ניסיון באפליקציה לדוגמה

  1. יוצרים ומריצים את אפליקציית הדוגמה מהקובץ .xcworkspace כדי להפעיל אותה במכשיר.

  2. אם מופיעה בקשה, נותנים לאפליקציה הרשאת גישה למצלמה. לאחר מכן, ARKit מתחיל לזהות מישורים מול המצלמה.

  3. מקישים על HOST כדי לעבור למצב אירוח. קוד של חדר לשיתוף המארחים ייוצר ויופיע במסך.

  4. מקישים על מטוס כדי להתחיל לארח בו צ'אט בענן.

    • האפליקציה ממקמת אובייקט של Andy Android במישור ומצרפת אליו עוגן.
    • בקשה מהמארח נשלחת לנקודת הקצה בענן של ARCore API. הבקשה מהמארח כוללת נתונים שמייצגים את המיקום של הצ'אט ביחס לתכונות החזוניות שמסביב לו.
    • אחרי שמארחים את הצ'אט, הוא מקבל מזהה שמשמש לפתרון של צ'אטים מקושרים בענן במרחב הזה.
  5. מקישים על RESOLVE ומזינים את קוד החדר כדי לגשת ל-Cloud Anchors קודמים שקיבלתם בחדר הזה, באמצעות אותו מכשיר או מכשיר אחר.

    • נשלחת בקשה לפתרון לנקודת הקצה בענן של ARCore API.
    • בקשת הפתרון כוללת מזהה עוגן בענן. אם המזהה תואם למיקום מוטמע והתהליך של הלוקליזציה מסתיים בהצלחה, השרת מחזיר את הטרנספורמציה של המיקום המוטמע בקואורדינטות המקומיות שלכם.
    • באפליקציית הדוגמה נעשה שימוש בטרנספורמציה כדי להוסיף את העוגן לסצנה ולייצר עיבוד (רנדור) של אובייקטים וירטואליים שמצורפים אליו.

הוספת ARCore SDK לאפליקציות

באפליקציות שלכם, תצטרכו לעדכן את Podfile כך שיכלול את ARCore SDK ואת הגרסאות הנתמכות של iOS. לשם כך:

  1. מוסיפים את platform ו-pod הבאים ל-Podfile של הפרויקט:

        platform :ios, '11.0'
        pod 'ARCore/CloudAnchors', '~> 1.48.0'
    
  1. פותחים חלון Terminal ומפעילים את pod update מהתיקייה שבה נמצא פרויקט Xcode.
    הפעלת הפקודה הזו יוצרת קובץ .xcworkspace שמשמש ליצירת האפליקציה ולהרצתה.

עוגנים קבועים בענן

כפי שמתואר במאמר אירוח של Cloud Anchor עם עמידות, אפשר לתת ל-Cloud Anchor משך חיים של עד 365 ימים. קוד לדוגמה לשימוש בעוגנים מתמידים בענן זמין בספרייה /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample ב-ARCore SDK ל-iOS מ-GitHub.

השלבים הבאים