מכשיר וירטואלי אנדרואיד כפלטפורמת פיתוח

כדי להשתמש במכשירים וירטואליים של אנדרואיד (AVD), אמולטור אנדרואיד תומך בממשק משתמש גרפי (GUI) ובממשק שורת פקודה (CLI). אתה בוחר את זרימת העבודה האופטימלית עבור הסביבה שלך.

הפעל AOSP Car AVD באמצעות מובנה מראש

כדי להפעיל ולבדוק במהירות באמצעות AOSP Car AVD בנוי מראש, השתמש בסקריפט קוד פתוח כדי להוריד ולהפעיל בניית אמולטור מ- ci.android.com . הסקריפט נבדק ב-macOS ו-Linux.

תזדקק ל- Curl כדי להשתמש בסקריפט הזה.

כדי להפעיל את הסקריפט:

  1. העתק את תוכן הסקריפט launch_emu.sh לקובץ המקומי שלך, בהנחה שאתה משתמש ב- launch_emu.sh כשם הקובץ המקומי.
  2. הפוך את הסקריפט המקומי שלך לניתן להפעלה. לדוגמה, הפעל את chmod +x ./launch_emu.sh .
  3. בדוק את האפשרויות הזמינות על ידי הפעלת הסקריפט עם ./launch_emu.sh -h .
  4. ב- ci.android.com , עבור אל הענף aosp-main-throttled ובחר גרסה עדכנית שבה sdk_car_x86_64 ירוק. לדוגמה, 11370359. אם אינך רואה מידע על בנייה, צא מחשבון Google שלך ​​ונסה שוב.
  5. הורד והתקן את הקבצים הבינאריים הרלוונטיים לאמולטור עם מזהה ה-build. לדוגמה, ./launch_emu.sh -i -a 11370359 .
  6. לאחר מכן, תוכל להשתמש ב ./launch_emu.sh כדי להפעיל את האמולטור שהורד והותקן (אל תשתמש באפשרויות -i או -a ).
  7. כדי להוריד ולהתקין מזהה build נוסף, הפעל את ./launch_emu.sh -c כדי לנקות את סביבת העבודה שלך ולאחר מכן חזור על שלב 4 ושלב 5 לעיל.

כדי לציין אפשרויות אתחול שורת הפקודה בעת הפעלת האמולטור, השתמש באפשרות -v . לדוגמה:

  ./launch_emu.sh -v “-cores 4 -memory 6144 -no-snapshot"

בניית AOSP Car AVD

התהליך לבניית AOSP Car AVD דומה לבניית תמונות AVD עבור טלפון (לדוגמה, aosp_car_x86_64):

  1. כדי להגדיר את סביבת הפיתוח ולזהות סניף, ראה כלי בקרת מקור . לאחר מכן סקור הורדת המקור :
    ANDROID_BRANCH="android12L-release"
    REPO_URL="https://android.googlesource.com/platform/manifest"
    mkdir $ANDROID_BRANCH && cd $ANDROID_BRANCH && repo init -u $REPO_URL -b $ANDROID_BRANCH --partial-clone && repo sync -c -j8
  2. בנה את תמונת ה-AVD:
    . build/envsetup.sh && lunch sdk_car_x86_64-userdebug && m -j32
  3. הפעל את תמונת ה-AVD (הוסף אפשרויות הפעלה נוספות של שורת הפקודה לפי הצורך):
    emulator &

    לדוגמה:

    איור 1. מסך אמולטור וירטואלי של אנדרואיד

    הערות לגבי תהליך זה:

    • מכיוון שתהליך הבנייה זהה לזה שנדרש לבניית אנדרואיד עבור מכשיר פיזי, אפשר קצת זמן להוריד את המקור ואז לבנות אותו.
    • כדי לעבוד על ענפים אחרים, הגדר את $ANDROID_BRANCH לענף /תג אחר .
    • תמונות AVD, כגון system.img , בנויות ב- $ANDROID_PRODUCT_OUT . למידע נוסף על תמונות מפתח, ראה ספריית מערכת AVD .
    • עיין בקובץ README כדי ללמוד כיצד נעשה שימוש בקבצים הבינאריים של האמולטור המובנים מראש בעץ האנדרואיד שלך להפעלת האמולטור.

צור AVD לרכב

הוספת AVD לרכב חדש כמעט זהה להוספת התקן חדש . לדוגמה, 1660554 יוצר AVD חדש של avd_car .

כדי ליצור AVD לרכב:

  1. צור חברה ותיקיית מכשיר לפי הצורך. דוגמה זו משתמשת ב- $ANDROID_BUILD_TOP/device/google_car/avd_car .
  2. צור את המוצר makefile, avd_car.mk , המגדיר כיצד לבנות את ה-AVD.
  3. צור תיקיית מכשיר, avd_car_device , שבה תכיל את BoardConfig.mk ו- source.properties .
  4. הוסף את makefile החדש ואת בחירת lunch החדשה ל- AndroidProducts.mk .
  5. כדי לבנות ולהפעיל את avd_car AVD החדש:
    . build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
כעת אתה מוכן להרכיב אבטיפוס של רוב תכונות ה-HMI והאפליקציה ב-AVD החדש שלך.

ארוז קובץ zip של תמונת AVD

אתה יכול לארוז ולשתף את ה-AVD שלך עם אחרים או להשתמש בו במחשב אחר. השתמש ב- emu_img_zip.mk כדי ליצור את קובץ ה-zip של תמונת AVD:

  1. לאחר שתבנה את ה-AVD, הפוך emu_img_zip ליעד:
    m emu_img_zip
  2. קובץ ה-zip של תמונת AVD, עם קידומת sdk-repo-linux-system-images , נוצר בתיקייה בשם $ANDROID_PRODUCT_OUT .

בנה ליבת AVD

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

כדי להתנסות בשינויי ליבה:

  1. הפעל את סדרת ההוראות הבאה:
    mkdir goldfish-kernel-54
    cd goldfish-kernel-54
    repo init -u https://android.googlesource.com/kernel/manifest -b
    common-android11-5.4
    repo sync
    BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh
    BUILD_CONFIG=common-modules/virtual-device/build.config.goldfish.x86_64
    build/build.sh
    ls -l ./out/android11-5.4/dist/
    
  2. החלף את הליבה הבינארית בבסיס הקוד לפי הקובץ AVD makefile. לדוגמה, x86_64-vendor.mk כולל x86_64-kernel.mk .

קוד הליבה והתצורה ממוקמים באופן הבא:

פריט ערך
ענף common-android11-5.4 (בשימוש ב-Android 11)
לְהַפְגִין kernel/manifest/common-android11-5.4
משותף-מודולים/התקן וירטואלי kernel/common-modules/virtual-device/android11-5.4
גַרעִין kernel/common/android11-5.4

צור פרופיל מכשיר חדש

כדי לאפשר למשתמשים ליצור AVD ספציפי ב-Android Studio AVD Manager, ראה יצירה וניהול של מכשירים וירטואליים . יצרני התקנים יכולים להגדיר מפרטי חומרה משלהם, כגון גודל מסך ו-DPI, באמצעות שימוש בקובץ devices.xml הכלול בתמונת AVD.

  • לדוגמה, עיין בפרופילים של מכשירי רכב ב- automotive.xml .
  • לפיתוח HMI או אב טיפוס, ניתן להוסיף לקובץ התקנים מרובים עבור אותה תמונת AVD.
  • כלול את הקובץ בקובץ ה-ZIP של תמונת OEM AVD בתיקיית [ABI] . לדוגמה, בתור x86_64 .
  • יצרני התקנים יכולים גם ליצור עור אמולטור . לדוגמה, כדי להגדיר כפתורי חומרה נוספים עבור UX נאמנות גבוהה יותר. זה לא שימושי רק עבור זרימות עבודה של מפתחים, אלא גם עבור משימות אחרות כגון מחקר וסקירה של UX.

צור את קובץ ה-XML של תמונת AVD

יצרני התקנים יכולים ליצור קובץ AVD Image XML עבור Android Studio כדי להוריד אותו.

  • לדוגמה, ראה את קובץ ה-XML של תמונת AAOS AVD, sys-img2-1.xml .
  • יצרני מכשירים יכולים להגדיר הסכם רישיון OEM AVD משלהם עבור משתמשי היעד שלהם (באמצעות מערכת הכבוד), עם הרישיון לאמולטור אנדרואיד. Android Studio מקבל קונצנזוס של משתמשים כאשר רישיון כזה כלול.

כדי ליצור את התמונה:

  1. הכן קובץ zip של תמונת AVD.
  2. פתח את ${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip .
  3. הוסף devices.xml לתיקיה x86_64 ולאחר מכן דחוס את הקובץ בקובץ zip. לדוגמה, כמו oem_avd_img_x86_64.zip .
  4. עדכן oem-sys-img2-1.xml .
  5. עדכן את שם קובץ ה-zip, הגודל וה-shasum (קבצי XML לדוגמה מסופקים tools ).

לדוגמה, כדי לארח את ה-AVD ב-Google Cloud Storage , ראה יצירת דלי אחסון .

כדי להעלות ולהפוך את ה-AVD לנגיש לציבור, ראה הפיכת נתונים לציבוריים :

BUCKET_NAME="aaos-avd"
gsutil mb gs://$BUCKET_NAME
gsutil cp oem_avd_img_x86_64.zip gs://$BUCKET_NAME
gsutil cp oem-sys-img2-1.xml gs://$BUCKET_NAME
gsutil iam ch allUsers:objectViewer gs://$BUCKET_NAME

פורמט כתובת ה-URL של תוסף AVD image SDK הוא: https://storage.googleapis.com/$BUCKET_NAME/oem-sys-img2-1.xml . לדוגמה, אם ה-BUCKET_NAME הוא aaos-avd, כתובת האתר היא: https://storage.googleapis.com/aaos-avd/oem-sys-img2-1.xml .

שתף תמונת AVD עם משתמשי Android Studio

כדי שהמשתמשים שלך יוכלו להוריד תמונות AVD ולהשתמש ב-AVD שלך מאת Android Studio, אתה יכול לספק קובץ XML של תוסף SDK. לפרטים, ראה עדכון כלי ה-IDE וה-SDK .

כדי להוריד את ה-AVD מהרשת:

  1. מארח את קובץ ה-zip של התמונה וקובצי ה-XML בשרת.
  2. ספק את כתובת האתר למשתמשי היעד שלך.
  3. ( אופציונלי ) הגבל את הגישה לפי שם משתמש וסיסמה.

לחלופין, כדי להאיץ את הפיתוח, הורד את ה-AVD לספרייה מקומית:

  1. שמור את קובצי ה-XML ואת כל החפצים המצוינים בקובץ ה-XML בתיקייה (לדוגמה, כל קובצי ה-ZIP של תמונת AVD) בשם ADDON_DIR .
  2. ציין את כתובת האתר בתור file://$ADDON_DIR/oem-sys-img2-1.xml .