שימוש במכשירים וירטואליים של אנדרואיד אמולטור

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

ארכיטקטורת אמולטור אנדרואיד

אמולטור אנדרואיד מאפשר לך להפעיל אמולציות של מכשירי אנדרואיד במכונות Windows, macOS או Linux. אמולטור אנדרואיד מריץ את מערכת ההפעלה אנדרואיד במכונה וירטואלית הנקראת Android Virtual Device (AVD). ה-AVD מכיל את ערימת תוכנת אנדרואיד המלאה, והיא פועלת כאילו היא על מכשיר פיזי. איור 1 הוא תרשים של הארכיטקטורה ברמה גבוהה של אמולטור אנדרואיד. למידע נוסף על האמולטור, ראה הפעל אפליקציות באמולטור אנדרואיד .

ארכיטקטורת אמולטור אנדרואיד

איור 1. ארכיטקטורת אמולטור אנדרואיד

בניית תמונות AVD

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

כדי לבנות ולהפעיל תמונת מערכת AVD:

  1. הורד את מקור האנדרואיד:

    mkdir aosp-master; cd aosp-master
    repo init -u
    repo sync -j24
    

    אם אתה רוצה לבנות גרסאות אנדרואיד אחרות, תוכל למצוא את שמות הסניפים שלהן במאגר האנדרואיד הציבורי . הם ממפים ל- Android Codenames, Tags ו-Build Numbers .

  2. בניית תמונת מערכת AVD. זהו תהליך זהה לבניית תמונת מערכת של מכשיר אנדרואיד . לדוגמה, כדי לבנות x86 32-bit AVD:

    mkdir aosp-master; cd aosp-master
    source ./build/envsetup.sh
    lunch sdk_phone_x86
    make -j32
    

    אם אתה מעדיף לבנות x86 64 סיביות AVD, הפעל lunch עבור היעד של 64 סיביות:

    lunch sdk_phone_x86_64
    
  3. הפעל את תמונת מערכת AVD באמולטור אנדרואיד:

    emulator
    

עיין באפשרויות ההפעלה של שורת הפקודה לקבלת פרטים נוספים על הפעלת האמולטור. איור 2 מציג דוגמה של אמולטור אנדרואיד המריץ AVD.

אמולטור אנדרואיד שמריץ AVD

איור 2. אמולטור אנדרואיד שמריץ AVD

שיתוף תמונות מערכת AVD עבור אחרים לשימוש עם Android Studio

בצע את ההוראות האלה כדי לשתף את תמונות מערכת ה-AVD שלך עם אחרים. הם יכולים להשתמש בתמונות מערכת ה-AVD שלך עם Android Studio כדי לפתח ולבדוק אפליקציות.

  1. צור חבילות sdk_repo ו- sdk נוספות:

    $ make -j32 sdk sdk_repo
    

    זה יוצר שני קבצים תחת aosp-master/out/host/linux-x86/sdk/sdk_phone_x86 :

    • sdk-repo-linux-system-images-eng.[username].zip
    • repo-sys-img.xml
  2. מארח את הקובץ sdk-repo-linux-system-images-eng.[username].zip במקום נגיש למשתמשים שלך, וקבל את כתובת ה-URL שלו לשימוש ככתובת ה- URL של תמונת מערכת AVD .

  3. ערוך repo-sys-img.xml בהתאם:

    • עדכן את <sdk:url> לכתובת ה-URL של תמונת מערכת AVD שלך .
    • ראה sdk-sys-img-03.xsd כדי ללמוד על עדכונים אחרים לקובץ.
  4. ארח repo-sys-img.xml במקום נגיש למשתמשים שלך, וקבל את כתובת האתר שלו לשימוש ככתובת האתר לעדכון מותאם אישית .

כדי להשתמש בתמונת AVD מותאמת אישית, בצע את הפעולות הבאות במנהל ה-SDK:

  1. הוסף את כתובת האתר לעדכון מותאם אישית כאתר עדכוני SDK .

    זה מוסיף את תמונת מערכת ה-AVD המותאמת אישית שלך לדף תמונות המערכת.

  2. צור AVD על ידי הורדה ובחירה של תמונת מערכת AVD המותאמת אישית.

הוספת תמיכה בריבוי תצוגה

אנדרואיד 10 משפר את Multi-Display (MD) כדי לתמוך טוב יותר במקרים של שימוש, כגון מצב אוטומטי ושולחן עבודה. אמולטור אנדרואיד תומך גם באמולציה מרובת תצוגה. אז אתה יכול ליצור סביבה מרובת תצוגה ספציפית מבלי להגדיר את החומרה האמיתית.

אתה יכול להוסיף תמיכה מרובת תצוגה ל-AVD על ידי ביצוע השינויים הבאים, או על ידי בחירת דובדבנים מ- CLs אלה .

  • הוסף ספק ריבוי תצוגה ל-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
    

אתה יכול למצוא את תכונות האמולטור העדכניות ביותר ומידע על שחרור מהמקורות הבאים: