הפעלת ARCore ל-Android

כאן מוסבר איך מפעילים פונקציונליות של ARCore בפרויקטים ב-Unity שמטרגטים מכשירי Android. לשם כך:

  1. ייבוא ה-ARCore SDK ל-Unity
  2. איך מגדירים שאפליקציית Google Analytics תהיה AR נדרשת או AR אופציונלית
  3. מוודאים שהאפליקציה עומדת בדרישות הפרטיות של המשתמשים של ARCore

Google Play Services למציאות רבודה

ערכות ה-SDK של ARCore הופכות את תכונות ה-AR לזמינות במכשירים הנתמכים ב-ARCore, שבהם שירותי Google Play ל-AR (ARCore) מותקנים.

שירותי Google Play למציאות רבודה מותקנים באופן אוטומטי ומתעדכנים ברוב המכשירים הנתמכים.

לפני התחלת סשן AR, האפליקציות צריכות:

  1. כדי לוודא ש-ARCore נתמך, התקשרו ל-CheckApkAvailability.
  2. חשוב לוודא ששירותי Google Play למציאות רבודה מותקנים ומעודכנים, ושההורדה של נתוני הפרופיל של מכשיר ARCore נדרשת, על ידי התקשרות למספר Session.RequestApkInstallation(bool userRequested).

ייבוא ARCore SDK ל-Unity

  1. פותחים את Unity ויוצרים פרויקט 3D חדש.

  2. התקנת חבילות ספציפיות של גרסאות.

    Unity 2020

    בוחרים באפשרות חלון > מנהל חבילות ומתקינים את החבילות הבאות:

    • HLAPI מרובה-משתתפים (נדרש בדגימה של Cloud anchors)
    • XR Plugin Plugin (נדרש על ידי תצוגה מקדימה מיידית שמשתמשת ב-TrackedPoseDriver)

    Unity 2019

    בוחרים באפשרות חלון > מנהל חבילות ומתקינים את החבילות הבאות:

    • HLAPI מרובה-משתתפים (נדרש בדגימה של Cloud anchors)
    • עוזרי קלט מדור קודם של XR (נדרש על ידי התצוגה המקדימה המיידית, שמשתמשת ב-TrackedPoseDriver)

    Unity 2018

    אין צורך בחבילות נוספות. המשך לשלב הבא.

    Unity 2017

    אין צורך בחבילות נוספות. המשך לשלב הבא.

  3. מייבאים את ה-SDK של ARCore ל-Unity:

    1. בוחרים באפשרות נכסים > ייבוא חבילה > חבילה מותאמת אישית.

    2. בוחרים את קובץ ה-arcore-unity-sdk-1.25.0.unitypackage שהורדתם.

    3. בתיבת הדו-שיח Import Package, מוודאים שכל אפשרויות החבילה נבחרו ולוחצים על Import.

בחלון Project של Unity, קובצי ה-SDK והאפליקציה HelloAR אמורים להופיע ב-Assets/GoogleARCore/Examples/HelloAR/.

הגדרת האפליקציה כ'נדרשת ב-AR' או 'אופציונלית ב-AR'

יש שתי דרכים להגדיר אפליקציה שתומכת בתכונות AR: AR נדרש ו-AR אופציונלי. אם אתם זקוקים לעזרה בהחלטה לגבי בחירת האפליקציה, תוכלו לקרוא את המאמר פרסום אפליקציות AR בחנות Google Play.

נדרש AR

כדי להשתמש באפליקציה ל-AR שנדרש, צריך שיהיה לה מכשיר נתמך ב-ARCore שמותקן בו שירותי Google Play למציאות רבודה.

  • חנות Google Play הופכת את האפליקציות הנדרשות ל-AR לזמינות רק במכשירים שתומכים ב-ARCore.

  • כשמשתמשים מתקינים אפליקציית AR נדרשת, חנות Google Play מתקינה באופן אוטומטי את Google Play Services למציאות רבודה. עם זאת, האפליקציה עדיין תצטרך לבצע בדיקות זמן ריצה נוספות, במקרה שצריך לעדכן את שירותי Google Play למציאות רבודה או להסיר את ההתקנה באופן ידני, או שהנתונים של פרופיל המכשיר ב-ARCore לא מעודכנים.

מידע נוסף זמין במאמר פרסום אפליקציות AR בחנות Google Play.

כדי להגדיר AR נדרש, יש לפעול לפי השלבים הבאים.

Unity 2020

  1. פותחים את Edit > Project Settings. בחרו באפשרות Google ARCore ובדקו שהאפשרות ARCore required מסומנת.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 24 או יותר.

Unity 2019

  1. פותחים את Edit > Project Settings. בחרו באפשרות Google ARCore ובדקו שהאפשרות ARCore required מסומנת.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 24 או יותר.

Unity 2018

  1. פותחים את Edit > Project Settings. בחרו באפשרות Google ARCore ובדקו שהאפשרות ARCore required מסומנת.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 24 או יותר.

Unity 2017

  1. פותחים את Edit > Project Settings > Google ARCore ומוודאים שהתיבה ARCore required מסומנת.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 24 או יותר.

האפליקציה שלכם תבצע בדיקות זמן ריצה באופן אוטומטי כדי לוודא שהמכשיר תומך ב-ARCore וששירותי Google Play למציאות רבודה מותקנים, ושנתוני הפרופיל של מכשיר ARCore מעודכנים. אם Google Play Services למציאות רבודה לא מותקן (אולי כי הוא הוסר על ידי המשתמש) או שהגרסה ישנה מדי, האפליקציה תבקש מהמשתמש להתקין או לעדכן אותה. אם הנתונים בפרופיל של מכשיר ARCore לא מעודכנים, האפליקציה תוריד ותעדכן אותם. אם ההתקנה או העדכון ייכשלו (אולי בגלל כשל ברשת), Session.Status יחזיר שגיאה והאפליקציה שלך צריכה לטפל בשגיאה ולצאת ממנה.

AR אופציונלי

לאפליקציה AR אופציונלית יש תכונות AR אופציונליות, שמופעלות רק במכשירים שבהם מותקן שירותי Google Play למציאות רבודה.

  • אפשר להתקין אפליקציות אופציונליות של AR במכשירים שלא תומכים ב-ARCore.

  • כשמשתמשים מתקינים אפליקציית AR אופציונלית, חנות Google Play לא תתקין את Google Play Services למציאות רבודה באופן אוטומטי.

כדי להגדיר AR כאפליקציה אופציונלית, יש לבצע את השלבים הבאים.

Unity 2020

  1. פותחים את Edit > Project Settings. לוחצים על Google ARCore ומבטלים את הסימון של ARCore נדרשות.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 18 או יותר.

Unity 2019

  1. פותחים את Edit > Project Settings. לוחצים על Google ARCore ומבטלים את הסימון של ARCore נדרשות.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 18 או יותר.

Unity 2018

  1. פותחים את Edit > Project Settings. לוחצים על Google ARCore ומבטלים את הסימון של ARCore נדרשות.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 18 או יותר.

Unity 2017

  1. פותחים את Edit > Project Settings > Google ARCore ומבטלים את הסימון של ARCore required.

  2. מגדירים את רמת ה-API המינימלית המתאימה. לשם כך לוחצים על עריכה > הגדרות פרויקט > נגן ובוחרים בכרטיסייה עם סמל Android. בקטע הגדרות אחרות > זיהוי, בוחרים רמת API מינימלית שהיא 18 או יותר.

ביצוע בדיקות בזמן הריצה

כשהיא מופעלת, האפליקציה שלך צריכה לבצע התקשרות אל Session.CheckApkAvailability() כדי לבדוק אם המכשיר תומך ב-ARCore, ואם כן, לבדוק אם שירותי Google Play Services לנתוני AR ו-ARCore מותקנים.

האפליקציה צריכה לטפל בתנאים הבאים:

תנאי פעולה
המכשיר לא תומך ב-ARCore. הסתרת פונקציונליות הקשורה ל-AR.
המכשיר תומך ב-ARCore, אבל אפליקציית Google Play Services לנתוני AR ו/או ARCore לא מותקנת או לא עדכנית. בקשה מהמשתמש להתקין או לעדכן את שירותי Google Play עבור נתוני פרופיל של AR ו/או ARCore. לשם כך, יש להפעיל את המספר Session.RequestApkInstallation().
המכשיר תומך ב-ARCore וב-Google Play Services להפעלת נתוני פרופיל AR ו-ARCore. יוצר ARCore Session ומתחיל להשתמש ב-ARCore.

דרישות בנושא פרטיות המשתמשים

עליכם לוודא שהאפליקציה שלכם עומדת בדרישות הפרטיות של המשתמשים של ARCore.

השלבים הבאים

קראו את הקוד באפליקציה לדוגמה וב-ARCore לעיון ב-Unity API.