הפעלת האמולטור משורת הפקודה

ערכת Android SDK כוללת אמולטור של מכשיר Android – מכשיר וירטואלי שפועל במחשב. האמולטור של Android מאפשר לכם לפתח ולבדוק אפליקציות ל-Android בלי להשתמש במכשיר פיזי.

בדף הזה מתוארות תכונות של שורת הפקודה שאפשר להשתמש בהן עם Android Emulator. במאמר הפעלת אפליקציות באמולטור של Android מוסבר איך משתמשים בממשק המשתמש של האמולטור של Android.

הפעלת האמולטור

אפשר להשתמש בפקודה emulator כדי להפעיל את האמולטור, במקום להפעיל את הפרויקט או להפעיל אותו דרך AVD Manager.

זוהי התחביר הבסיסי של שורת הפקודה להפעלת מכשיר וירטואלי מהנחיה במסוף:

emulator -avd avd_name [ {-option [value]} … ]

או

emulator @avd_name [ {-option [value]} … ]

לדוגמה, אם מפעילים את האמולטור מתוך Android Studio שפועל ב-Mac, שורת הפקודה שמוגדרת כברירת מחדל תהיה דומה לזו:

/Users/janedoe/Library/Android/sdk/emulator/emulator -avd Pixel8_API_34 -netdelay none -netspeed full -qt-hide-window -grpc-use-token -idle-grpc-timeout

שימו לב שהארגומנטים -qt-hide-window -grpc-use-token -idle-grpc-timeout משמשים רק להפעלת חלון האמולטור ב-Android Studio. אם רוצים להריץ את האמולטור בחלון נפרד, לא צריך להשתמש בפרמטרים הנוספים האלה.

אפשר לציין אפשרויות הפעלה כשמפעילים את האמולטור, אבל לא אחרי שהוא כבר פועל.

כדי להציג רשימה של שמות AVD, מזינים את הפקודה הבאה:

emulator -list-avds

משתמשים באפשרות הזו כדי להציג רשימה של שמות AVD מתיקיית הבית של Android. אפשר לשנות את ספריית הבית שמוגדרת כברירת מחדל על ידי הגדרת משתנה הסביבה ANDROID_SDK_HOME שמציין את הבסיס של הספרייה הספציפית למשתמש שבה מאוחסנים כל התוכן של AVD וההגדרות.

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

כדי להפסיק את Android Emulator, סוגרים את חלון האמולטור.

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

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

כדי להשתמש ב-adb כדי להתקין, להפעיל ולבדוק את האפליקציה, פועלים לפי השלבים הכלליים הבאים:

  1. יוצרים את האפליקציה ואורזים אותה ב-APK, כמו שמתואר במאמר יצירה והרצה של האפליקציה.
  2. מפעילים את האמולטור משורת הפקודה, כמו שמתואר בקטע הקודם, באמצעות אפשרויות ההפעלה הנדרשות.
  3. מתקינים את האפליקציה באמצעות adb.
  4. מריצים את האפליקציה באמולטור ובודקים אותה.
    בזמן שהאמולטור פועל, אפשר להשתמש במסוף האמולטור כדי להנפיק פקודות לפי הצורך.

כדי להסיר אפליקציה, פועלים כמו במכשיר Android.

המכשיר הווירטואלי שומר את האפליקציה ואת נתוני המצב שלה בין הפעלות מחדש במחיצה של דיסק נתוני המשתמש (userdata-qemu.img). כדי לנקות את הנתונים האלה, מפעילים את האמולטור עם האפשרות -wipe-data או מוחקים את הנתונים ב-AVD Manager. מידע נוסף על מחיצת נתוני המשתמשים ועל אחסון אחר זמין בקטע הבא.

הערה: כלי השירות adb מציג את המכשיר הווירטואלי כמכשיר פיזי אמיתי. לכן, יכול להיות שתצטרכו להשתמש בדגל -d עם כמה פקודות נפוצות של adb, כמו install. הדגל -d מאפשר לציין באיזה מבין כמה מכשירים מחוברים רוצים להשתמש כיעד של פקודה. אם לא מציינים את -d, האמולטור יטרגט את המכשיר הראשון ברשימה שלו.

הסבר על קובצי ברירת המחדל וספריות ברירת המחדל

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

האמולטור של Android משתמש בהיפרווייזר (QEMU).

ספריית מערכת AVD

ספריית המערכת מכילה את תמונות המערכת של Android שבהן האמולטור משתמש כדי לדמות את מערכת ההפעלה. בספרייה הזו יש קבצים לקריאה בלבד שספציפיים לפלטפורמה, שמשותפים לכל מכשירי ה-AVD מאותו סוג, כולל רמת ה-API, ארכיטקטורת ה-CPU והווריאציה של Android. מיקומי ברירת המחדל הם:

  • ‫macOS ו-Linux – ~/Library/Android/sdk/system-images/android-apiLevel/variant/arch/
  • ‫Windows – C:\Users\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\

איפה:

  • apiLevel היא רמת API מספרית או אות לגרסאות טרום-השקה. לדוגמה, android-V מציין את התצוגה המקדימה של Android VanillaIceCream. עם ההשקה, רמת ה-API שלה הייתה 35, והיא סומנה ב-android-35.
  • variant הוא שם שמתאים לתכונות ספציפיות שהוטמעו בקובץ האימג' של המערכת. לדוגמה, google_apis או android-wear.
  • arch היא ארכיטקטורת ה-CPU של היעד. לדוגמה, x86.

משתמשים באפשרות -sysdir כדי לציין ספריית מערכת אחרת עבור ה-AVD.

האמולטור קורא את הקבצים הבאים מהספרייה של המערכת:

טבלה 1. קובצי ספרייה של המערכת שנקראים על ידי Android Emulator

קובץ תיאור אפשרות לציין קובץ אחר
kernel-qemu או kernel-ranchu קובץ האימג' הבינארי של הליבה של ה-AVD. ‫kernel-ranchu מבוסס על אמולטור QEMU. -kernel
ramdisk.img קובץ האימג' של מחיצת האתחול. זוהי קבוצת משנה של system.img שנטענת על ידי ליבת המערכת בהתחלה לפני שקובץ האימג' של המערכת מותקן. בדרך כלל הוא מכיל רק כמה קבצים בינאריים וסקריפטים של אתחול. -ramdisk
system.img הגרסה הראשונית של תמונת המערכת, שניתן רק לקרוא אותה. באופן ספציפי, המחיצה שמכילה את ספריות המערכת והנתונים שמתאימים לרמת ה-API ולגרסה. -system
userdata.img הגרסה הראשונית של חלוקת הנתונים, שמופיעה כ-data/ במערכת המדומה ומכילה את כל הנתונים שניתן לכתוב עבור ה-AVD. האמולטור משתמש בקובץ הזה כשיוצרים AVD חדש או כשמשתמשים באפשרות ‑wipe-data. מידע נוסף זמין בקטע הבא, userdata-qemu.imgתיאור הקובץ. -initdata
-init-data

ספריית נתוני AVD

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

מיקום ברירת המחדל הוא הבא, כאשר name הוא שם ה-AVD:

  • ‫macOS ו-Linux – ~/.android/avd/name.avd/
  • ‫Windows 10 ומעלה – C:\Users\user\.android\name.avd\

משתמשים באפשרות -datadir כדי לציין ספריית נתונים אחרת של AVD.

בטבלה הבאה מפורטים הקבצים החשובים ביותר שנמצאים בספרייה הזו:

טבלה 2. קבצים חשובים בספריית הנתונים של AVD

קובץ תיאור אפשרות לציין קובץ אחר
userdata-qemu.img

התוכן של מחיצת הנתונים, שמופיע כ-data/ במערכת המדומה. כשיוצרים מכשיר AVD חדש או כשמשתמשים באפשרות -wipe-data כדי לאפס את מכשיר ה-AVD להגדרות היצרן, האמולטור מעתיק את הקובץ userdata.img בספריית המערכת כדי ליצור את הקובץ הזה.

כל מופע של מכשיר וירטואלי משתמש בתמונה של נתוני משתמשים שאפשר לכתוב בה, כדי לאחסן נתונים ספציפיים למשתמש ולסשן. לדוגמה, היא משתמשת בתמונה כדי לאחסן נתונים, הגדרות, מסדי נתונים וקבצים של אפליקציה שהותקנה על ידי משתמש ייחודי. לכל משתמש יש ספרייה שונה של ANDROID_SDK_HOME שבה מאוחסנות ספריות הנתונים של מכשירי ה-AVD שנוצרו על ידי אותו משתמש. כל AVD מורכב מקובץ אחד.userdata-qemu.img

-data
cache.img תמונת המחיצה של הזיכרון הזמני (cache), שמופיעה כ-cache/ במערכת המדומה. הוא ריק כשיוצרים AVD חדש או כשמשתמשים באפשרות -wipe-data. היא מכילה קבצים זמניים להורדה, ומנהל ההורדות או המערכת מאכלסים אותה. לדוגמה, הדפדפן משתמש בו כדי לשמור במטמון דפי אינטרנט ותמונות שהורדו בזמן שהאמולטור פועל. הקובץ נמחק כשמכבים את המכשיר הווירטואלי. אפשר לשמור את הקובץ באמצעות האפשרות -cache. -cache
sdcard.img

(אופציונלי) תמונה של מחיצת כרטיס SD שמאפשרת לדמות כרטיס SD במכשיר וירטואלי. אפשר ליצור קובץ תמונה של כרטיס SD בAVD Manager או באמצעות הכלי mksdcard. הקובץ מאוחסן במחשב הפיתוח וצריך לטעון אותו בהפעלה.

כשמגדירים AVD בכלי AVD Manager, אפשר לבחור להשתמש בקובץ כרטיס SD שמנוהל באופן אוטומטי או בקובץ שיצרתם באמצעות הכלי mksdcard. אפשר לראות את sdcard.imgהקובץ שמשויך ל-AVD במנהל ה-AVD. האפשרות -sdcard מחליפה את קובץ כרטיס ה-SD שצוין ב-AVD. שימו לב: האפשרות הזו של כרטיס SD לא תפעל במחשבי Mac עם Apple Silicon.

אתם יכולים לעיין בקבצים, לשלוח קבצים, להעתיק קבצים ולהסיר קבצים מכרטיס SD מדומה באמצעות ממשק המשתמש של האמולטור או כלי השירות adb בזמן שהמכשיר הווירטואלי פועל. אי אפשר להסיר כרטיס SD מדומה ממכשיר וירטואלי שפועל.

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

האמולטור מתייחס לקובץ כמאגר של בייטים, ולכן פורמט כרטיס ה-SD לא משנה.

האפשרות -wipe-data לא משפיעה על הקובץ הזה. אם רוצים לנקות את הקובץ, צריך למחוק אותו ואז ליצור אותו מחדש באמצעות AVD Manager או הכלי mksdcard. שינוי הגודל של הקובץ גורם גם למחיקת הקובץ וליצירת קובץ חדש.

-sdcard

רשימת הספריות והקבצים שבהם נעשה שימוש באמולטור

יש שתי דרכים לגלות איפה הקבצים נמצאים:

  • משתמשים באפשרות -verbose או -debug init כשמפעילים את האמולטור משורת הפקודה. בודקים את הפלט.
  • משתמשים בפקודה emulator -help-option כדי להציג רשימה של ספריית ברירת מחדל. לדוגמה:
    emulator -help-datadir
    Use '-datadir <dir>' to specify a directory where writable image files will be searched. On this system, the default directory is: /Users/me/.android See '-help-disk-images' for more information about disk image files.

אפשרויות הפעלה משורת הפקודה

בקטע הזה מפורטות האפשרויות שאפשר לציין בשורת הפקודה כשמפעילים את האמולטור.

הערה: אנחנו ממשיכים לפתח את Android Emulator כדי לשפר את המהימנות שלו. כדי לראות את הסטטוס של הבעיות שדווחו לגבי אפשרויות שונות של שורת הפקודה, וכדי לדווח על באגים, אפשר לעיין ב כלי למעקב אחר בעיות ב-Android.

אפשרויות נפוצות

בטבלה הבאה מפורטות אפשרויות ההפעלה בשורת הפקודה שבהן אתם עשויים להשתמש לעיתים קרובות יותר:

טבלה 3. אפשרויות נפוצות של שורת הפקודה

אפשרות של שורת פקודה תיאור
אתחול מהיר
-no-snapshot-load מבצע אתחול קר ושומר את מצב האמולטור ביציאה.
-no-snapshot-save מבצע אתחול מהיר אם אפשר, אבל לא שומר את מצב האמולטור כשיוצאים ממנו.
-no-snapshot משבית לחלוטין את התכונה 'הפעלה מהירה' ולא טוען או שומר את מצב האמולטור.
חומרת המכשיר
-camera-back mode
-camera-front mode
הגדרת מצב האמולציה למצלמה שפונה קדימה או אחורה. ההגדרה הזו מבטלת כל הגדרה של המצלמה ב-AVD.

הערך mode יכול להיות כל אחת מהאפשרויות הבאות:

  • emulated – האמולטור מדמה מצלמה בתוכנה.
  • webcamn – האמולטור משתמש במצלמת אינטרנט שמחוברת למחשב הפיתוח, ומצוינת באמצעות מספר. כדי לראות רשימה של מצלמות אינטרנט, משתמשים באפשרות -webcam-list. לדוגמה, webcam0.
  • none – השבתת המצלמה במכשיר הווירטואלי.

לדוגמה:

emulator @Pixel8_API_34 -camera-back webcam0
-webcam-list רשימה של מצלמות האינטרנט במחשב הפיתוח שזמינות לאמולציה. לדוגמה:
emulator @Pixel8_API_34 -webcam-list
        List of web cameras connected to the computer:
        Camera 'webcam0' is connected to device 'webcam0'
        on channel 0 using pixel format 'UYVY'

בדוגמה, webcam0 הראשון הוא השם שבו משתמשים בשורת הפקודה. השם השני webcam0 הוא השם שבו משתמשת מערכת ההפעלה במחשב הפיתוח. השם השני משתנה בהתאם למערכת ההפעלה.

החל מגרסה 25.2.4 של SDK Tools, חובה לציין את שם ה-AVD.

קובצי אימג' וזיכרון
-memory size

מציין את גודל ה-RAM הפיזי, מ-1,536 עד 8,192 מגה-בייט. לדוגמה:

emulator @Pixel8_API_34 -memory 2048

הערך הזה מבטל את ההגדרה של AVD.

-sdcard filepath מציינת את שם הקובץ ואת הנתיב לקובץ תמונה של מחיצה בכרטיס SD. לדוגמה:

emulator @Pixel8_API_34 -sdcard C:/sd/sdcard.img

אם הקובץ לא נמצא, האמולטור עדיין יופעל, אבל ללא כרטיס SD. הפקודה מחזירה אזהרה No SD Card Image.

אם לא מציינים את האפשרות הזו, ברירת המחדל היא sdcard.img בספריית הנתונים, אלא אם מצוין משהו אחר ב-AVD. פרטים על כרטיסי SD וירטואליים מופיעים במאמר בנושא ספריית הנתונים של AVD.

-wipe-data מחיקת נתוני המשתמש והעתקת נתונים מקובץ הנתונים המקורי. האפשרות הזו מוחקת את הנתונים של המכשיר הווירטואלי ומחזירה אותו למצב שבו הוא היה כשהוגדר לראשונה. כל האפליקציות וההגדרות שהותקנו יוסרו. לדוגמה:

emulator @Pixel8_API_34 -wipe-data

כברירת מחדל, קובץ נתוני המשתמש הוא userdata-qemu.img וקובץ הנתונים הראשוני הוא userdata.img. שני הקבצים האלה נמצאים בספריית הנתונים. האפשרות -wipe-data לא משפיעה על הקובץ sdcard.img. מידע נוסף על נתוני משתמשים זמין בקטע הסבר על קובצי ברירת המחדל וספריות ברירת המחדל.

ניפוי באגים
-debug tags המתג מפעיל או משבית את ההצגה של הודעות ניפוי באגים לתג אחד או יותר. אם יש כמה תגים, צריך להפריד ביניהם באמצעות רווח, פסיק או עמודה. לדוגמה:

$ emulator @Pixel8_API_34 -debug init,metrics

כדי להשבית תג, מוסיפים מקף (-) לפניו. לדוגמה, האפשרות הבאה מציגה את כל הודעות הניפוי באגים, למעט אלה שקשורות לשקעי רשת ולמדדים:

-debug all,-socket,-metrics

כדי לראות רשימה של תגים ותיאורים, משתמשים באפשרות -help-debug-tags. לדוגמה:

emulator -help-debug-tags

אפשר להגדיר את תגי הניפוי באגים שמוגדרים כברירת מחדל במשתנה הסביבה ANDROID_VERBOSE. מגדירים את התגים שרוצים להשתמש בהם ברשימה מופרדת בפסיקים. בדוגמה הבאה מוצג איך מציינים את התגים socket ו-gles:

ANDROID_VERBOSE=socket,gles

היא שוות ערך לשימוש בפונקציה:

-debug-socket -debug-gles

או

-debug socket,gles

-debug-tag
-debug-no-tag
הפעלת סוג מסוים של הודעת ניפוי באגים. משתמשים בטופס no כדי להשבית סוג של הודעת ניפוי באגים. לדוגמה:

emulator @Pixel8_API_34 -debug-all -debug-no-metrics

כדי לראות רשימה של תגים, משתמשים בפקודה emulator -help-debug-tags.

-logcat logtags ההגדרה הזו מאפשרת להציג הודעות Logcat לתג אחד או יותר, ולכתוב אותן בחלון המסוף. לדוגמה, הפקודה הבאה מפעילה הודעות שגיאה מכל הרכיבים:

emulator @Pixel8_API_34 -logcat *:e

הפקודה logtags משתמשת באותו פורמט כמו הפקודה adb logcat logtags. למידע נוסף, מזינים adb logcat -help. זו רשימה של מסנני יומנים שמופרדים באמצעות רווח או פסיק, בפורמט componentName:logLevel. ‫componentName הוא כוכבית (*) שמשמשת כתו כללי לחיפוש, או שם של רכיב כמו ActivityManager, SystemServer, InputManager או WindowManager.

logLevel הוא אחד מהערכים הבאים:

  • v – verbose
  • d - ניפוי באגים
  • i – אינפורמטיבי
  • w – רמת היומן של האזהרה
  • e – שגיאה
  • s – שקט

בדוגמה הבאה מוצגות הודעות של רכיב GSM ברמת היומן informative:

emulator @Pixel8_API_34 -logcat '*:s GSM:i'

אם לא מציינים את האפשרות -logcat בשורת הפקודה, האמולטור מחפש את משתנה הסביבה ANDROID_LOG_TAGS. אם ANDROID_LOG_TAGS מוגדר עם ערך logtags תקין ולא ריק, האמולטור משתמש בערך הזה כדי להפעיל את הפלט של Logcat למסוף כברירת מחדל. אפשר גם להפנות הודעות יומן זהות או אחרות למסוף באמצעות adb.

מידע נוסף על Logcat ועל adb זמין במאמרים כלי שורת הפקודה Logcat, הצגה וכתיבה של יומנים באמצעות Logcat, הסיווג Log והנפקת פקודות adb.

-show-kernel ההגדרה הזו קובעת אם להציג הודעות ניפוי באגים של ליבת המערכת בחלון הטרמינל. לדוגמה:

emulator @Pixel8_API_34 -show-kernel

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

-verbose הדפסת הודעות אתחול של האמולטור בחלון הטרמינל. לדוגמה:

emulator @Pixel8_API_34 -verbose

מוצגים הקבצים וההגדרות שנבחרו בפועל כשמפעילים מכשיר וירטואלי שמוגדר ב-AVD. האפשרות הזו זהה לציון של -debug-init.

רשת
-dns-server servers השימוש בשרתי ה-DNS שצוינו. ‫servers היא רשימה מופרדת בפסיקים של עד ארבע כתובות IP או שמות של שרתי DNS. לדוגמה:
emulator @Pixel8_API_34 -dns-server 192.0.2.0,
192.0.2.255

כברירת מחדל, האמולטור מנסה לזהות את שרתי ה-DNS שבהם אתם משתמשים ומגדיר כינויים מיוחדים ברשת חומת האש המדומה כדי לאפשר למערכת Android להתחבר ישירות לשרתים. משתמשים באפשרות -dns-server כדי לציין רשימה אחרת של שרתי DNS.

-http-proxy proxy כל חיבורי ה-TCP מתבצעים דרך שרת proxy ספציפי של HTTP/HTTPS. אם האמולטור צריך לגשת לאינטרנט דרך שרת proxy, אפשר להשתמש באפשרות הזו או במשתנה הסביבה http_proxy כדי להגדיר את ההפניה המתאימה. לדוגמה:

emulator @Pixel8_API_34 -http-proxy myserver:1981

הערך proxy יכול להיות אחד מהבאים:

http://server:port
http://username:password@server:port

אפשר להשמיט את הקידומת http://.

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

-netdelay delay

ההגדרה הזו קובעת את ההשהיה ברשת כאחד מהערכים הבאים במילישניות: delay

  • gsm – GSM/CSD (מינימום 150, מקסימום 550).
  • hscsd - HSCSD (מינימום 80, מקסימום 400).
  • gprs – GPRS (מינימום 35, מקסימום 200).
  • edge – EDGE/EGPRS (מינימום 80, מקסימום 400).
  • umts – UMTS/3G (מינימום 35, מקסימום 200).
  • hsdpa – HSDPA (מינימום 0, מקסימום 0).
  • lte – LTE (מינימום 0, מקסימום 0).
  • evdo - EVDO (מינימום 0, מקסימום 0).
  • none – ללא זמן אחזור, ברירת המחדל (מינימום 0, מקסימום 0).
  • num – מציין את זמן האחזור המדויק.
  • min:max – מציין השהיות מינימליות ומקסימליות ספציפיות.

לדוגמה:

emulator @Pixel8_API_34 -netdelay gsm

האמולטור תומך בהגבלת רוחב פס וגם בהשהיות חיבור גבוהות יותר. אפשר להגדיר אותו דרך הגדרות הסקין או באמצעות האפשרויות ‑netspeed ו--netdelay.

-netfast משבית את הגבלת רוחב הפס. לדוגמה:

emulator @Pixel8_API_34 -netfast

האפשרות הזו זהה לציון -netspeed full -netdelay none. אלה ערכי ברירת המחדל של האפשרויות האלה.

-netspeed speed

הגדרת הדמיה של מהירות הרשת. מציינים את מהירויות ההעלאה וההורדה המקסימליות ברשת באמצעות אחד מהערכים הבאים speed ביחידות kbps:‏

  • gsm - GSM/CSD (העלאה: 14.4, הורדה: 14.4).
  • hscsd - HSCSD (העלאה: 14.4, הורדה: 57.6).
  • gprs – GPRS (העלאה: 28.8, הורדה: 57.6).
  • edge – EDGE/EGPRS (העלאה: 473.6, הורדה: 473.6).
  • umts – UMTS/3G (העלאה: 384.0, הורדה: 384.0).
  • hsdpa - HSDPA (העלאה: 5760.0, הורדה: 13,980.0).
  • lte – LTE (העלאה: 58,000, הורדה: 173,000).
  • evdo - EVDO (העלאה: 75,000, הורדה: 280,000).
  • full – ללא הגבלה, ברירת המחדל (עלייה: 0.0, ירידה: 0.0).
  • num – מציין את מהירות ההעלאה וההורדה.
  • up:down – מציין מהירויות העלאה והורדה נפרדות.

לדוגמה:

emulator @Pixel8_API_34 -netspeed edge

האמולטור תומך בהגבלת רוחב פס וגם בהשהיות חיבור גבוהות יותר. אפשר להגדיר את זה דרך הגדרות הסקין או באמצעות האפשרויות ‑netspeed ו--netdelay.

-port port מגדירה את מספר יציאת ה-TCP שמשמשת את המסוף ואת adb. לדוגמה:

emulator @Pixel8_API_34 -port 5556

ערך ברירת המחדל הוא 5554 עבור המופע הראשון של המכשיר הווירטואלי שפועל במחשב. מכשיר וירטואלי תופס בדרך כלל זוג יציאות סמוכות: יציאת קונסולה ויציאת adb. המסוף של המכשיר הווירטואלי הראשון שפועל במכונה מסוימת משתמש ביציאת המסוף 5554 וביציאה adb 5555. במקרים הבאים, נעשה שימוש במספרי יציאה שגדלים ב-2. לדוגמה, 5556/5557,‏ 5558/5559 וכן הלאה. הטווח הוא 5554 עד 5682, שמאפשר 64 מכשירים וירטואליים בו-זמנית.

הקצאות הפורטים הן לרוב זהות להקצאות שמתקבלות כשמציינים -ports port,{port + 1}. המספר {port + 1} צריך להיות פנוי ומשוריין ל-adb. אם אחת מהיציאות של המסוף או של adb כבר נמצאת בשימוש, האמולטור לא יופעל.

האפשרות ‑port מדווחת על היציאות והמספר הסידורי שבהם המכשיר הווירטואלי משתמש, ומציגה אזהרה אם יש בעיות בערכים שסיפקתם. בממשק המשתמש של האמולטור, אפשר לראות את מספר יציאת המסוף בכותרת החלון, ואת מספר יציאת adb על ידי בחירה באפשרות עזרה > מידע.

שימו לב: אם הערך של port לא זוגי והוא בטווח 5554 עד 5584, המכשיר הווירטואלי יופעל אבל לא יוצג כשמשתמשים בפקודה adb devices, אם adb server מופעל אחרי האמולטור. לכן, מומלץ להשתמש במספר יציאת קונסולה זוגי.

-ports
console-port,adb-port
מגדירה את יציאות ה-TCP שמשמשות את המסוף ואת adb. לדוגמה:

emulator @Pixel8_API_34 -ports 5556,5559

טווח היציאות התקף הוא 5554 עד 5682, שמאפשר 64 מכשירים וירטואליים בו-זמנית. באפשרות -ports מדווחים אילו יציאות ומספרים סידוריים מופעלים במופע האמולטור, ומוצגת אזהרה אם יש בעיות בערכים שסיפקתם.

במקום זאת, מומלץ להשתמש באפשרות -port, אם אפשר. האפשרות -ports זמינה להגדרות רשת שנדרשות להן הגדרות מיוחדות.

מידע נוסף על הגדרת יציאות של מסוף ו-adb זמין באפשרות -port.

-tcpdump filepath מבצעת לכידה של חבילות נתונים ברשת ומאחסנת אותן בקובץ. לדוגמה:

emulator @Pixel8_API_34 -tcpdump /path/dumpfile.cap

אפשר להשתמש באפשרות הזו כדי להתחיל לתעד את כל חבילות הרשת שנשלחות דרך רשת ה-LAN הווירטואלית של האתרנט של האמולטור. אחרי כן, אפשר להשתמש בכלי כמו Wireshark כדי לנתח את התעבורה.

הערה: האפשרות הזו מתעדת את כל מנות הנתונים של Ethernet, והיא לא מוגבלת לחיבורי TCP.

מערכת
-accel mode הגדרה של האצת VM של אמולטור. לדוגמה:

emulator @Pixel8_API_34 -accel auto

האצת האמולציה פועלת רק בתמונות מערכת x86 ו-x86_64. ב-Linux, הוא מסתמך על KVM. ב-Windows וב-Mac, הוא מסתמך על מעבד Intel ועל מנהל ההתקן Intel HAXM. המערכת מתעלמת מהאפשרות הזו אם לא מתבצעת אמולציה של מכשיר x86 או x86_64.

הערכים התקינים של mode הם:

  • auto – המערכת קובעת אוטומטית אם יש תמיכה בהאצה ומשתמשת בה כשזה אפשרי (ברירת מחדל).
  • off – משבית את ההאצה לחלוטין, וזה שימושי בעיקר לניפוי באגים.
  • on – כופה האצה. אם KVM או HAXM לא מותקנים או לא ניתנים לשימוש, האמולטור לא יופעל ותוצג הודעת שגיאה.

מידע נוסף זמין במאמר בנושא הגדרת האצת חומרה עבור Android Emulator.

-accel-check הפונקציה בודקת אם מותקן היפר-ויז'ר שנדרש להאצת מכונת VM של אמולטור (HAXM או KVM). לדוגמה:

emulator -accel-check

מידע נוסף זמין במאמר בדיקה אם מותקן Hypervisor.

-engine engine

מציינת את מנוע האמולטור:

  • auto – בחירה אוטומטית של מנוע (ברירת מחדל).
  • classic – נעשה שימוש במנוע QEMU 1 הישן (הוצא משימוש).
  • qemu2 – נעשה שימוש במנוע QEMU 2 החדש יותר.

לדוגמה:

emulator @Pixel8_API_34 -engine auto

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

-gpu mode בחירה של מצב האמולציה של ה-GPU. לדוגמה:

emulator @Pixel8_API_34 -gpu swiftshader_indirect

מידע נוסף זמין במאמר בנושא הגדרת האצת גרפיקה.

-no-accel ההגדרה הזו משביתה את ההאצה של מכונת ה-VM של האמולטור כשמשתמשים בתמונת מערכת x86 או x86_64. הוא שימושי רק לניפוי באגים, והוא זהה לציון -accel off. לדוגמה:

emulator @Pixel8_API_34 -no-accel

מידע נוסף זמין במאמר בנושא הגדרת האצת חומרה עבור Android Emulator.

-nojni
-no-jni
משבית את הבדיקות המורחבות של Java Native Interface ‏ (JNI) בסביבת זמן הריצה של Android Dalvik או ART. לדוגמה:

emulator @Pixel8_API_34 -nojni

כשמפעילים מכשיר וירטואלי, בדיקות JNI מורחבות מופעלות כברירת מחדל. מידע נוסף זמין במאמר JNI tips.

-selinux {disabled|permissive} מגדיר את מודול האבטחה Security-Enhanced Linux‏ (SELinux) במצב disabled או permissive במערכת הפעלה של Linux. לדוגמה:

me-linux$ emulator @Pixel8_API_34 -selinux permissive

כברירת מחדל, SELinux פועל במצב enforcing, כלומר מדיניות האבטחה נאכפת. מצב permissive טוען את מדיניות SELinux אבל לא אוכף אותה. האפשרות הזו מתעדת רק הפרות של המדיניות. מצב disabled משבית את התמיכה של הליבה (kernel) ב-SELinux.

-timezone timezone

הגדרת אזור הזמן של המכשיר הווירטואלי ל-timezone במקום אזור הזמן של המארח. לדוגמה:

emulator @Pixel8_API_34 -timezone Europe/Paris

כברירת מחדל, האמולטור משתמש באזור הזמן של המחשב שבו אתם מפתחים. משתמשים באפשרות הזו כדי לציין אזור זמן אחר או אם הזיהוי האוטומטי לא פועל בצורה תקינה. הערך של timezone צריך להיות בפורמט zoneinfo שהוא area/location או area/subarea/location. לדוגמה:

  • America/Los_Angeles
  • Europe/Paris
  • America/Argentina/Buenos_Aires

אזור הזמן שצוין צריך להיות במסד הנתונים zoneinfo.

-version מספר הגרסה של האמולטור. לדוגמה:

emulator @Pixel8_API_34 -version

או

emulator -version
UI
-no-boot-anim משבית את אנימציית ההפעלה במהלך הפעלת האמולטור, כדי לקצר את זמן ההפעלה. לדוגמה:

emulator @Pixel8_API_34 -no-boot-anim

במחשבים איטיים יותר, האפשרות הזו יכולה להאיץ משמעותית את רצף האתחול.

-screen mode הגדרה של מצב מסך מגע מדומה. לדוגמה:

emulator @Pixel8_API_34 -screen no-touch

הערך mode יכול להיות כל אחת מהאפשרויות הבאות:

  • touch – הדמיה של מסך מגע (ברירת מחדל).
  • multi-touch – הדמיה של מסך מגע מולטי-טאץ'.
  • no-touch – השבתה של אמולציית מסך מגע ומולטי-טאץ'.

אפשרויות מתקדמות

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

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

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

טבלה 4. אפשרויות מתקדמות של שורת הפקודה

אפשרות מתקדמת תיאור קצר
-bootchart timeout

הפעלה של bootcharting עם זמן קצוב לתפוגה בשניות. חלק מתמונות המערכת של Android כוללות מערכת init שעברה שינוי ומשלבת מתקן לתרשים אתחול. באמצעות האפשרות הזו אפשר להעביר למערכת תקופת זמן קצובה ל-bootcharting. אם מערכת ההפעלה לא מפעילה את האפשרות bootcharting, היא לא תעשה כלום. האפשרות הזו שימושית בעיקר למפתחי פלטפורמות, ולא למפתחי אפליקציות חיצוניים.

לדוגמה:

emulator @Pixel8_API_34 -bootchart 120
-cache filepath

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

לדוגמה:

emulator @Pixel8_API_34 -cache
   ~/.android/avd/Pixel8_API_34.avd/cache_persistent.img

אם לא משתמשים באפשרות הזו, ברירת המחדל היא קובץ זמני בשם cache.img. מידע נוסף זמין במאמר בנושא ספריית נתונים של AVD.

-cache-size size

מגדיר את גודל מחיצת המטמון במגה-בייט.

לדוגמה:

emulator @Pixel8_API_34 -cache-size 1000

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

-data filepath

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

לדוגמה:

emulator @Pixel8_API_34 -data
   ~/.android/avd/Pixel8_API_34.avd/userdata-test.img

אם לא משתמשים באפשרות הזו, ברירת המחדל היא קובץ בשם userdata-qemu.img. מידע נוסף על קובץ נתוני המשתמש זמין במאמר בנושא ספריית נתונים של AVD.

-datadir dir

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

לדוגמה:

emulator @Pixel8_API_34 -datadir
   ~/.android/avd/Pixel8_API_34.avd/mytest
-force-32bit

משתמש באמולטור 32 ביט בפלטפורמות 64 ביט. לפעמים האפשרות הזו שימושית לבדיקה או לניפוי באגים. לדוגמה, הייתה בעיה שבה האמולטור לא פעל לפעמים ב-Windows‏ 64 ביט, אבל כן פעל ב-32 ביט. האפשרות הזו הייתה שימושית להשוואות כדי לנפות באגים בבעיה. לדוגמה:

emulator @Pixel8_API_34 -force-32bit
-help-disk-images

קבלת עזרה לגבי תמונות דיסק. האפשרות הזו מספקת מידע שרלוונטי למפתחי אפליקציות ולמפתחי פלטפורמות. לדוגמה:

emulator -help-disk-images
-help-char-devices

קבלת עזרה לגבי המפרטים של התו device. חלק מהאפשרויות של האמולטור מחייבות שימוש בפרמטר device. לדוגמה:

emulator -help-char-devices
-help-sdk-images

קבלת עזרה לגבי תמונות דיסק שרלוונטיות למפתחי אפליקציות. האפשרות הזו מקבלת מידע על המיקום של קובצי התמונות עבור מכשיר וירטואלי של Android (AVD) שנוצר באמצעות כלי ה-SDK. לדוגמה:

emulator -help-sdk-images
-help-build-images

קבלת עזרה לגבי תמונות דיסק שרלוונטיות למפתחי פלטפורמות. לדוגמה:

emulator -help-build-images
-initdata filepath
-init-data filepath

מציינת את הגרסה הראשונית של מחיצת הנתונים. אחרי מחיקת נתוני המשתמש, האמולטור מעתיק את התוכן של הקובץ שצוין לנתוני המשתמש (כברירת מחדל, הקובץ userdata-qemu.img) במקום להשתמש בקובץ userdata.img כגרסה הראשונית. מציינת את שם הקובץ ואת הנתיב המוחלט או הנתיב שקשור לספריית העבודה.

לדוגמה:

emulator @Pixel8_API_34 -initdata
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/userdata-test.img

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

-kernel filepath

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

אפשר להשתמש באפשרות ‑show‑kernel כדי להציג הודעות ניפוי באגים של ליבת המערכת.

לדוגמה:

emulator @Pixel8_API_34 -kernel
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/kernel-test.img -show-kernel

אם לא מציינים את האפשרות הזו, ברירת המחדל היא kernel-ranchu. מידע נוסף זמין במאמר ספריית המערכת של AVD.

-noaudio
-no-audio

האפשרות הזו משביתה את התמיכה באודיו במכשיר הווירטואלי הזה. במחשבים מסוימים עם Linux ו-Windows יש מנהלי התקנים פגומים של אודיו שגורמים לתסמינים שונים, כמו מניעת ההפעלה של האמולטור. במקרה כזה, כדאי להשתמש באפשרות הזו כדי לפתור את הבעיה. לחלופין, אפשר להשתמש במשתנה הסביבה QEMU_AUDIO_DRV כדי לשנות את קצה העורף של האודיו.

לדוגמה:

emulator @Pixel8_API_34 -noaudio
-nocache
-no-cache

מפעיל את האמולטור ללא חלוקת מטמון. אם לא משתמשים באפשרות הזו, ברירת המחדל היא קובץ זמני בשם cache.img. האפשרות הזו מיועדת למפתחי פלטפורמות בלבד. מידע נוסף זמין במאמר ספריית הנתונים של AVD.

לדוגמה:

emulator @Pixel8_API_34 -nocache
-no-snapshot

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

לדוגמה:

emulator @Pixel8_API_34 -no-snapshot
-no-snapshot-load

מונעת מהאמולטור לטעון את מצב ה-AVD מאחסון התמונות. מבצע אתחול מלא.

לדוגמה:

emulator @Pixel8_API_34 -no-snapshot-load
-no-snapshot-save

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

לדוגמה:

emulator @Pixel8_API_34 -no-snapshot-save
-no-snapshot-update-time

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

לדוגמה:

emulator @Pixel8_API_34 -no-snapshot-update-time
-no-snapstorage

מפעיל את האמולטור בלי לטעון קובץ לאחסון או לטעינה של תמונות מצב, ומבצע אתחול מלא ומשבית את הפונקציונליות של תמונות מצב. האפשרות הזו מבטלת את האפשרויות -snapstorage ו--snapshot.

לדוגמה:

emulator @Pixel8_API_34 -no-snapstorage
-no-window

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

emulator @Pixel8_API_34 -no-window
-partition-size size

מציין את גודל מחיצת נתוני המערכת במגה-בייט. לדוגמה:

emulator @Pixel8_API_34 -partition-size 1024
-prop name=value

מגדיר מאפיין של מערכת Android באמולטור כשהוא מופעל. הערך של name צריך להיות שם נכס עם התווית qemu_prop באורך של עד 32 תווים, בלי רווחים, והערך של value צריך להיות מחרוזת באורך של עד 92 תווים. דוגמה אפשר לראות בקובץ property_contexts. אפשר לציין כמה אפשרויות של ‑prop בשורת פקודה אחת. האפשרות הזו יכולה להיות שימושית לניפוי באגים. לדוגמה:

emulator @Pixel8_API_34 -prop qemu.name=value -prop qemu.abc=xyz
-qemu args העברת ארגומנטים לתוכנת האמולטור QEMU. אם משתמשים באפשרות הזו, חשוב לוודא שהיא האפשרות האחרונה שצוינה, כי כל האפשרויות שאחריה יפורשו כאפשרויות ספציפיות ל-QEMU. זו אפשרות מתקדמת למדי, ורק מפתחים שמכירים מאוד את QEMU ואת האמולציה של Android צריכים להשתמש בה.
-qemu -h

מוצגת עזרה בנושא -qemu. לדוגמה:

emulator -qemu -h
-ramdisk filepath

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

לדוגמה:

emulator @Pixel8_API_34 -ramdisk
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/ramdisk-test.img

אם לא משתמשים באפשרות הזו, ברירת המחדל היא הקובץ ramdisk.img בספריית המערכת. מידע נוסף זמין במאמר בנושא ספריית המערכת של AVD.

-report-console socket

הפונקציה מדווחת על יציאת המסוף לצד שלישי מרוחק לפני התחלת ההדמיה. הוא יכול להיות שימושי לסקריפט של בדיקה אוטומטית. ‫socket צריך להשתמש באחד מהפורמטים האלה:

  • tcp:port[,server][,max=seconds][,ipv6]
  • unix:port[,server][,max=seconds][,ipv6]

למידע נוסף, אפשר להשתמש באפשרות -help-report-console כמו שמתואר בקטע בנושא עזרה לגבי אפשרויות ספציפיות.

-shell

יוצר מסוף shell של root בטרמינל הנוכחי. האפשרות הזו שונה מהפקודה adb shell בדרכים הבאות:

  • היא יוצרת מעטפת root שמאפשרת לשנות חלקים רבים במערכת.
  • היא פועלת גם אם adb daemon במערכת המדומה לא תקין.
  • מקישים על Control+C (או על Command-C ב-macOS) כדי לעצור את האמולטור במקום את המעטפת.

לדוגמה:

emulator @Pixel8_API_34 -shell
-snapshot name

מציינת את השם של צילום מסך בקובץ אחסון של צילומי מסך לפעולות אוטומטיות של התחלה ושמירה.

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

אם לא משתמשים באפשרות הזו, ברירת המחדל היא רצף אתחול מלא. אם הצילום שצוין לא קיים, האמולטור מבצע במקומו רצף אתחול מלא ומבצע פעולת שמירה.

מידע על ציון קובץ אחסון של תמונת מצב וקובץ ברירת המחדל זמין באפשרות -snapstorage.

emulator @Pixel8_API_34 -snapshot snapshot2

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

אפשר גם ליצור תמונת מצב ממסוף האמולטור באמצעות הפקודה avd snapshot save name. מידע נוסף זמין במאמר בנושא שליחת פקודות למסוף של אמולטור.

-snapshot-list

מוצגת רשימה של תמונות המצב הזמינות. הפקודה הזו מדפיסה טבלה של תמונות מצב שמאוחסנות בקובץ האחסון של תמונות המצב שהאמולטור הופעל איתו, ואז יוצאת. אם מציינים גם את -snapstorage file הפקודה הזו מדפיסה טבלה של התמונות ששמורות בקובץ.

לדוגמה:

emulator @Pixel8_API_34 -snapshot-list -snapstorage
   ~/.android/avd/Pixel8_API_34.avd/snapshots-test.img

אפשר להשתמש בערכים של העמודות ID ו-TAG בפלט כארגומנטים לאפשרות -snapshot.

-snapstorage filepath

מציין קובץ מאגר שמכיל את כל תמונות המצב. כל התמונות שנוצרו במהלך ההרצה נשמרות בקובץ הזה. אפשר לשחזר רק תמונות מצב בקובץ הזה במהלך הפעלת האמולטור.

לדוגמה:

emulator @Pixel8_API_34 -snapstorage
   ~/.android/avd/Pixel8_API_34.avd/snapshots-test.img

אם לא מציינים את האפשרות הזו, ברירת המחדל היא snapshots.img בספריית הנתונים. אם הקובץ שצוין לא קיים, האמולטור יופעל, אבל בלי תמיכה בשמירה או בטעינה של תמונות מצב.

-sysdir dir

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

emulator @Pixel8_API_34 -sysdir
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/test
-system filepath

מציין קובץ מערכת ראשוני. המאפיין הזה מציין את שם הקובץ ואת הנתיב המוחלט או את הנתיב שביחס לספריית העבודה.

לדוגמה:

emulator @Pixel8_API_34 -system
   ~/Library/Android/sdk/system-images/android-34/
   google_apis/x86_64/system-test.img

אם לא משתמשים באפשרות הזו, ברירת המחדל היא הקובץ system.img בספריית המערכת. מידע נוסף זמין במאמר בנושא ספריית המערכת של AVD.

-writable-system

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

  1. מפעילים מכשיר וירטואלי באמצעות האפשרות -writable-system.
  2. מזינים את הפקודה adb remount ממסוף פקודות כדי להורות לאמולטור לטעון מחדש את system/ במצב קריאה/כתיבה. כברירת מחדל, הוא נטען לקריאה בלבד.

השימוש בדגל הזה יוצר עותק זמני של תמונת המערכת שיכול להיות גדול מאוד, עד כמה מאות מגה-בייט, אבל הוא יימחק כשהאמולטור ייצא.

אפשרויות שהוצאו משימוש

האפשרויות הבאות בשורת הפקודה הוצאו משימוש:

  • -audio-in
  • -audio-out
  • -charmap
  • -code-profile
  • -cpu-delay
  • -dpi-device
  • -dynamic_skin
  • -enable-kvm
  • -gps
  • -image
  • -keyset
  • -help-keys
  • -help-keyset-file
  • -nand-limits
  • -noskin
  • -no-skin
  • -onion
  • -onion-alpha
  • -onion-rotation
  • -radio
  • -ranchu
  • -raw-keys
  • -scale
  • -shared-net-id
  • -shell-serial
  • -skin
  • -skindir
  • -trace
  • -useaudio

עזרה לגבי אפשרויות של שורת פקודה

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

הצגת כל האפשרויות של האמולטור

כדי להדפיס רשימה של כל האפשרויות של האמולטור, כולל תיאור קצר, מזינים את הפקודה הבאה:

emulator -help

קבלת עזרה מפורטת לגבי אפשרות ספציפית

כדי להדפיס עזרה לאפשרות הפעלה ספציפית, מזינים את הפקודה הבאה:

emulator -help-option

לדוגמה:

emulator -help-netspeed

ההסבר הזה מפורט יותר מהתיאור שמופיע באפשרות -help.

קבלת עזרה מפורטת לגבי כל האפשרויות

כדי לקבל עזרה מפורטת לגבי כל האפשרויות של האמולטור, מזינים את הפקודה הבאה:

emulator -help-all

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

כדי לקבל רשימה של משתני סביבה של אמולטור, מזינים את הפקודה הבאה:

emulator -help-environment

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

הצגת רשימה של תגי ניפוי באגים

כדי להדפיס רשימה של תגים לאפשרויות של -debug, מזינים את הפקודה הבאה:

emulator -help-debug-tags

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