אתם יכולים להשתמש במכונה וירטואלית ל-Android כדי לבדוק תרחישים של AR בלי מכשיר פיזי. באמצעות Android Emulator אפשר להריץ אפליקציות ARCore בסביבה וירטואלית עם מכשיר ממולא שאתם שולטים בו.
הגדרת סביבת הפיתוח
דרישות התוכנה:
Android Studio מגרסה 3.1 ואילך.
Android Emulator גרסה 27.2.9 ואילך.
הורדת Android Studio וכלי SDK ל-ARCore
מתקינים את Android Studio בגרסה 3.1 ואילך.
ב-Android Studio, עוברים אל Preferences > Appearance and Behavior > System Settings > Android SDK.
לוחצים על הכרטיסייה SDK Platforms ומסמנים את התיבה Show Package Details.
בקטע של גרסת Android המתאימה, בוחרים באפשרות:
Google APIs Intel x86 Atom System Image API ברמה 27 ואילך.צריך לבחור בכרטיסייה SDK Tools ולהוסיף את Android Emulator מגרסה 27.2.9 ואילך.
יש ללחוץ על OK כדי להתקין את החבילות והכלים שנבחרו.
צריך ללחוץ שוב על OK כדי לאשר את השינויים.
Accept הסכם הרישיון של מתקין הרכיבים.
לוחצים על Finish.
יצירת מכשיר וירטואלי עם תמיכה ב-AR
מידע נוסף זמין בהוראות ליצירת מכשיר וירטואלי ב-Android Studio.
יצירה של מכשיר Android וירטואלי חדש (AVD)
ב-Android Studio, לוחצים על Tools > Device Manager כדי לפתוח את Device Manager.
לוחצים על Create Device בחלק העליון של החלונית ניהול המכשירים.
בוחרים או יוצרים את פרופיל החומרה הרצוי לטלפון ובוחרים באפשרות Next.
צריך לבחור תמונת מערכת
x86
אוx86_64
עם API ברמה 27 ואילך ובוחרים באפשרות Next.יש תמיכה במכשירי ARCore פיזיים ב-API ברמה 24 ואילך, כדי לקבל תמיכה באמולטור Android נדרשת API ברמה 27 ואילך.
יש תמיכה רק בארכיטקטורות של Android Emulator שמבוססות על x86. בשלב הזה אין תמיכה בארכיטקטורות אחרות, כמו
arm64-v8a
ו-armeabi-v7
.
מוודאים שהמכשיר הווירטואלי מוגדר בצורה נכונה:
לוחצים על Show Advanced Settings.
מוודאים שהערך Camera Back מוגדר ל-VirtualScene.
לוחצים על הסמל Finish כדי ליצור את ה-AVD.
הפעלת האפליקציה
בדיקה של אפליקציית ARCore במכשיר וירטואלי עם תמיכה ב-AR באמולטור. כדי לעשות זאת, אפשר לפעול לפי ההוראות ל-Android Studio להרצת אפליקציה במהדמ של Android.
עדכון של שירותי Google Play למציאות רבודה
סביר להניח שהגרסה של Google Play Services למציאות רבודה באמולטור אינה זמינה תאריך. כדי לעדכן אותו:
מורידים את הגרסה העדכנית ביותר של Google_Play_Services_for_AR_1.46.0_x86_for_emulator.apk מ-GitHub הדף גרסאות.
מתקינים את ה-APK שהורדתם בכל AVD שבו רוצים להשתמש:
מפעילים את ה-AVD הרצוי וגוררים את קובץ ה-APK שהורדתם מתיקיית המערכת (כלומר, Downloads) בסימולטור שפועל, או להתקין אותו באמצעות
adb
בזמן שהמכשיר הווירטואלי פועל:adb install -r Google_Play_Services_for_AR_1.46.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 למציאות רבודה. יצירת מכשיר וירטואלי חדש והתקנה בגרסת x86.