אפשר להשתמש באמולטור Android כדי ליצור אמולציות של מכשירי Android שמריצות תמונות מותאמות אישית של מערכת Android. אפשר גם לשתף את תמונות מערכת Android כדי שאנשים אחרים יוכלו להריץ אמולציות שלהן. לחשבון בנוסף, ניתן להוסיף תמיכה בתצוגה מרובת מסכים לאמולטור Android אמולציות.
הארכיטקטורה של האפליקציה 'אמולטור Android'
בעזרת האפליקציה Android Emulator אפשר להריץ אמולציות של מכשירי Android ב-Windows, מכונות macOS או Linux. אפליקציית 'אמולטור Android' מפעילה את מערכת ההפעלה Android במכונה וירטואלית שנקראת מכשיר וירטואלי של Android (AVD). ה-AVD מכיל את תוכנת Android המלאה סטאק, והיא פועלת כאילו היו במכשיר פיזי. איור 1 הוא תרשים של אמולטור Android את הארכיטקטורה המתקדמת. לקבלת מידע נוסף על האמולטור: הפעלת אפליקציות באמולטור Android
איור 1. הארכיטקטורה של האפליקציה 'אמולטור Android'
יצירת תמונות AVD
כל קובץ AVD כולל תמונת מערכת של Android, שפועלת ה-AVD. מנהל ה-AVD כולל כמה תמונות מערכת. ואפשר ליצור תמונות מערכת AVD מקוד המקור ויוצרים אמולציות של מכשירים כדי להריץ אותן.
כדי ליצור ולהפעיל קובץ אימג' של מערכת AVD:
מורידים את המקור של Android:
mkdir aosp-main; cd aosp-main
repo init -u
repo sync -j24
אם רוצים ליצור גרסאות אחרות ל-Android, אפשר למצוא את שמות הסתעפויות ב- מאגר Android הציבורי. הם ממופים אל שמות קוד, תגים ומספרי Build ב-Android.
יצירת קובץ אימג' של מערכת AVD. זה אותו תהליך כמו בניית מערכת מכשיר Android תמונה. לדוגמה, כדי לפתח גרסת x86 של AVD בגרסת 32 ביט:
mkdir aosp-main; cd aosp-main
source ./build/envsetup.sh
lunch sdk_phone_x86
make -j32
אם מעדיפים ליצור גרסת AVD של 64 ביט מסוג x86, מריצים את הפקודה
lunch
כדי להגדיר את היעד של 64 ביט:lunch sdk_phone_x86_64
מריצים את תמונת המערכת של ה-AVD באמולטור Android:
emulator
לצפייה אפשרויות להפעלת שורת הפקודה לפרטים נוספים על הפעלת האמולטור. איור 2 מציג דוגמה אמולטור Android שמריץ AVD.
איור 2. אמולטור Android שמריץ AVD
שיתוף תמונות של מערכת AVD כדי שאחרים יוכלו להשתמש בהן ב-Android Studio
כדי לשתף תמונות של מערכת AVD עם אחרים, יש לפעול לפי ההוראות הבאות. הן יכולות שימוש בתמונות מערכת ה-AVD באמצעות Android סטודיו לפיתוח ולבדיקה של אפליקציות.
יצירת חבילות נוספות של
sdk
ו-sdk_repo
:ל-Android מגרסה 13 ואילך, צריך להשתמש ב-
emu_img_zip
הפקודה:$ make emu_img_zip
הפעולה הזו יוצרת קובץ
sdk-repo-linux-system-images-eng.[username]].zip
.ב-Android מגרסה 12 ומטה, יש להשתמש ב
sdk_repo
הפקודה:$ make -j32 sdk sdk_repo
הפקודה
make sdk sdk_repo
יוצרת שני קבצים בaosp-main/out/host/linux-x86/sdk/sdk_phone_x86
:sdk-repo-linux-system-images-eng.[username].zip
repo-sys-img.xml
אירוח הקובץ
sdk-repo-linux-system-images-eng.[username].zip
במקום נגיש למשתמשים, ומקבלים את כתובת ה-URL שלו שתשמש כ-AVD כתובת ה-URL של תמונת המערכת.ב-Android מגרסה 12 ומטה, צריך לערוך את
repo-sys-img.xml
בהתאם:- מעדכנים את
<sdk:url>
לכתובת ה-URL של תמונת המערכת ב-AVD. - צפייה SDK-sys-img-03.xsd לקבל מידע נוסף על עדכונים אחרים בקובץ.
- אפשר לארח את
repo-sys-img.xml
במקום נגיש למשתמשים, ולקבל כתובת URL שתשמש ככתובת ה-URL של אתר העדכון המותאם אישית.
- מעדכנים את
כדי להשתמש בתמונת AVD בהתאמה אישית, מבצעים את הפעולות הבאות ב-SDK Manager:
מוסיפים את כתובת ה-URL של אתר העדכון המותאם אישית כעדכון SDK אתר.
הפעולה הזו גורמת להוספת תמונת מערכת ה-AVD המותאמת אישית לדף תמונות המערכת.
יצירת AVD באמצעות הורדה ובחירה של תמונת מערכת ה-AVD בהתאמה אישית.
הוספת תמיכה בתצוגה מרובת מסכים
10 Android משפרים את המודעות לרשת מרובת מסכים (MD) כדי לספק תמיכה טובה יותר בתרחישים לדוגמה, כמו מצב אוטומטי ומחשב. במכשירי Android האמולטור תומך גם באמולציה מרובת מסכים. אז אפשר ליצור רשת מרובת מסכים בלי להגדיר את החומרה האמיתית.
ניתן להוסיף ל-AVD תמיכה בתצוגה מרובת מסכים על ידי ביצוע השינויים הבאים, או לבחור דובדבן ערכי ה-CL האלה.
כדי להוסיף ל-build ספק לתצוגה מרובת מסכים, יש להוסיף את השורות האלה לקובץ
build/target/product/sdk_phone_x86.mk
:PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \ system/lib/libemulator_multidisplay_jni.so \ system/lib64/libemulator_multidisplay_jni.so \ system/priv-app/MultiDisplayProvider/MultiDisplayProvider.apk \ PRODUCT_PACKAGES += MultiDisplayProvider
הפעלת התכונה הניסיונית לכמה מסכים על ידי הוספת השורה הזו לקובץ
device/generic/goldfish/data/etc/advancedFeatures.ini
:MultiDisplay = on
אפשר למצוא את התכונות החדשות ביותר של האמולטור ולפרסם מידע מ: המקורות הבאים: