הפעלת אפליקציות AR באמולטור Android

שימוש באמולטור Android כדי לבדוק תרחישי AR ללא מכשיר פיזי. האמולטור Android מאפשר לך להריץ אפליקציות ARCore בסביבה וירטואלית עם מכשיר אמולציה שאתם בקרה.

הגדרת סביבת הפיתוח

דרישות התוכנה:

הורדת כלי Android Studio וכלי SDK ל-ARCore

  1. מתקינים את Android Studio בגרסה 3.1 ואילך.

  2. ב-Android Studio, עוברים אל Preferences > Appearance and Behavior > System Settings > Android SDK.

  3. לוחצים על הכרטיסייה SDK Platforms ומסמנים את התיבה Show Package Details.

    בגרסה המתאימה של Android, בוחרים באפשרות:
    Google APIs Intel x86 Atom System Image ברמה 27 ואילך.

  4. צריך לבחור בכרטיסייה SDK Tools ולהוסיף את Android Emulator מגרסה 27.2.9 ואילך.

  5. יש ללחוץ על OK כדי להתקין את החבילות והכלים שנבחרו.

  6. צריך ללחוץ שוב על OK כדי לאשר את השינויים.

  7. Accept הסכם הרישיון של מתקין הרכיבים.

  8. לוחצים על Finish.

יצירת מכשיר וירטואלי עם תמיכה ב-AR

לקבלת מידע נוסף, אפשר לעיין בהוראות של Android Studio כדי ליצור מכשיר וירטואלי.

יצירה של מכשיר Android וירטואלי חדש (AVD)

  1. ב-Android Studio, לוחצים על Tools > Device Manager כדי לפתוח את ניהול המכשיר.

  2. לוחצים על Create Device בחלק העליון של החלונית ניהול המכשירים.

  3. בוחרים או יוצרים את פרופיל החומרה הרצוי לטלפון ואז בוחרים באפשרות Next.

  4. צריך לבחור תמונת מערכת x86 או x86_64 עם API ברמה 27 ואילך ובוחרים באפשרות Next.

    • יש תמיכה במכשירי ARCore פיזיים ב-API ברמה 24 ואילך, כדי לקבל תמיכה באמולטור Android נדרשת API ברמה 27 ואילך.

    • יש תמיכה רק בארכיטקטורות של Android Emulator שמבוססת על x86. המלצות אחרות כמו arm64-v8a ו-armeabi-v7, אין כרגע נתמך.

  5. מוודאים שהמכשיר הווירטואלי מוגדר כראוי:

    • לוחצים על Show Advanced Settings.

    • מוודאים שהערך Camera Back מוגדר ל-VirtualScene.

  6. לוחצים על הסמל Finish כדי ליצור את ה-AVD.

הפעלת האפליקציה

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

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

סביר להניח שהגרסה של Google Play Services למציאות רבודה באמולטור אינה זמינה תאריך. כדי לעדכן אותו:

  1. מורידים את הגרסה העדכנית ביותר של Google_Play_Services_for_AR_1.45.0_x86_for_emulator.apk מ-GitHub הדף גרסאות.

  2. מתקינים את ה-APK שהורדתם בכל AVD שבו רוצים להשתמש:

    מפעילים את ה-AVD הרצוי וגוררים את ה-APK שהורדתם מתיקיית המערכת (כלומר Downloads) לריצה אמולטור, או להתקין אותו באמצעות adb כשהמכשיר הווירטואלי פועל:

    adb install -r Google_Play_Services_for_AR_1.45.0_x86_for_emulator.apk

חוזרים על השלבים האלה לכל מכשיר AVD נוסף שבו רוצים להשתמש.

שליטה בסצנה הווירטואלית

כשהאפליקציה שלך מתחברת ל-ARCore, תוצג שכבת-על שמתארת איך לשלוט המצלמה ושורת סטטוס מתחת לחלון האמולטור.

צריך להזיז את המצלמה הווירטואלית

צריך ללחוץ לחיצה ארוכה על Shift כדי לגשת לפקדי התנועה של המצלמה. משתמשים בפקדים הבאים כדי להזיז את המצלמה:

פעולה מה לעשות?
הזזה שמאלה או ימינה החזקת המקשים Shift + הקשה על A או על D
הזזה למטה או למעלה החזקת המקשים Shift + לחיצה על Q או על E
הזזה קדימה או אחורה החזקת המקשים Shift + הקשה על W או על S
שינוי כיוון המכשיר לחיצה ארוכה על מקש Shift + הזזת העכבר

משחררים את Shift כדי לחזור למצב אינטראקטיבי באמולטור.

שימוש בכרטיסייה Virtual Sensors באמצעי בקרה מורחבים למיקום מכשיר מדויק יותר.

איך מוסיפים תמונות משופרות לסצנה

טוענים תמונות לסביבה המדומה של האמולטור כדי לבדוק תמונות מרובות.

אפשר להשתמש בכרטיסייה Camera ב-Extended controls כדי להוסיף או לשנות את Scene images. מוצגים בו שתי תמונות: אחת על הקיר והשנייה על השולחן.

כדי להציג את מיקומי התמונות האלו בסביבה, מפעילים את האמולטור ואז מזיזים את מצלמה לפינת האוכל דרך הדלת מאחורי המצלמות המיקום.

טיפים לפתרון בעיות

  • אם אפליקציית ARCore מופעלת ומופיעה ההודעה "המכשיר הזה לא תומך ב-AR" צריך לבדוק את הגרסה הקודמת בתמונת המערכת. חשוב לוודא שבחרת להשתמש API ברמה 27 גרסה 4 ואילך.

  • אם אפליקציית ARCore לא נפתחת במצלמה כשהיא מופעלת, צריך לוודא הערך Camera Back מוגדר ל-VirtualScene, כפי שמתואר בשלבי ההגדרה שלמעלה.

  • אם אפליקציית ARCore לא נפתחת ומוצגת הודעת השגיאה "יצירת AR נכשלה סשן' כדאי לבדוק את יומן האפליקציה. אם מוצאים java.lang.UnsatisfiedLinkError עם הודעה שמכילה /lib/arm/libarcore_c.so" is for EM_ARM (40) instead of EM_386 (3), יכול להיות שהתקנת גרסה לא נכונה של APK של Google Play Services ל-AR. יצירת מכשיר וירטואלי חדש והתקנה בגרסת x86.