Android SDK 包含一个 Android 设备模拟器——一个在您的计算机上运行的虚拟设备。Android 模拟器允许您在不使用物理设备的情况下开发和测试 Android 应用。
此页面描述了您可以与 Android 模拟器一起使用的命令行功能。有关使用 Android 模拟器 UI 的信息,请参阅 在 Android 模拟器上运行应用。
启动模拟器
使用 emulator
命令启动模拟器,作为 运行您的项目 或 通过 AVD 管理器启动它 的替代方法。
以下是从终端提示符启动虚拟设备的基本命令行语法:
emulator -avd avd_name [ {-option [value]} … ]
或者
emulator @avd_name [ {-option [value]} … ]
例如,如果您在运行于 Mac 上的 Android Studio 中启动模拟器,则默认命令行将类似于以下内容:
/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
使用此选项可以显示 Android 主目录中的 AVD 名称列表。您可以通过设置 ANDROID_SDK_HOME
环境变量来覆盖默认主目录,该变量指定存储所有配置和 AVD 内容的用户特定目录的根目录。
您可以在启动虚拟设备之前在终端窗口中设置环境变量,或者通过操作系统的用户设置进行设置。例如,在 Linux 系统的 .bashrc
文件中。
要停止 Android 模拟器,请关闭模拟器窗口。
安装应用
除了通过 Android Studio 或 模拟器 UI 安装应用外,您还可以使用 adb
实用程序在虚拟设备上安装您的应用。
要使用 adb
安装、运行和测试您的应用,请遵循以下一般步骤:
- 按照 构建和运行您的应用 中的说明,将您的应用构建并打包成 APK。
- 如上一节所述,使用命令行启动模拟器,并使用任何必要的启动选项。
- 使用
adb
安装您的应用。 - 在模拟器上运行和测试您的应用。
模拟器运行期间,您可以使用 模拟器控制台 根据需要发出命令。
要卸载应用,请像在 Android 设备上一样操作。
虚拟设备在用户数据磁盘分区 (userdata-qemu.img
) 中保留应用及其状态数据以应对重启。要清除此数据,请使用 -wipe-data
选项启动模拟器或在 AVD 管理器中清除数据。有关用户数据分区和其他存储的更多信息,请参阅下一节。
注意:adb
实用程序将虚拟设备视为实际的物理设备。因此,您可能必须对某些常见的 adb
命令(例如 install
)使用 -d
标志。-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 指定不同的系统目录。
模拟器从系统目录读取以下文件:
文件 | 描述 | 指定不同文件的选项 |
---|---|---|
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 数据目录。
下表列出了此目录中最重要的文件:
文件 | 描述 | 指定不同文件的选项 |
---|---|---|
userdata-qemu.img
|
数据分区的內容,在模拟系统中显示为 每个虚拟设备实例都使用可写的用户数据映像来存储用户和特定于会话的数据。例如,它使用该映像来存储唯一用户的已安装应用数据、设置、数据库和文件。每个用户都有一个不同的 |
-data
|
cache.img
|
缓存分区映像,在模拟系统中显示为 cache/ 。当您第一次创建 AVD 或使用 -wipe-data 选项时,它为空。它存储临时下载文件,并由下载管理器和有时由系统填充。例如,浏览器使用它在模拟器运行时缓存下载的网页和图像。当您关闭虚拟设备时,文件将被删除。您可以使用 -cache 选项来持久化该文件。 |
-cache
|
sdcard.img
|
(可选) SD 卡分区映像,允许您在虚拟设备上模拟 SD 卡。您可以在 AVD 管理器 中或使用 在 AVD 管理器中定义 AVD 时,您可以选择使用自动管理的 SD 卡文件或使用 在虚拟设备运行时,您可以使用模拟器 UI 或 要加载之前将文件复制到 SD 卡文件,请将映像文件安装为循环设备,然后复制文件。或者,使用实用程序(例如 模拟器将文件视为字节池,因此 SD 卡格式无关紧要。 `-wipe-data` 选项不影响此文件。如果要清除文件,请删除该文件,然后使用 AVD 管理器或 `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 模拟器正在持续开发中,以提高其可靠性。有关针对各种命令行选项报告的问题的状态以及如何报告错误,请参阅Android Issue Tracker。
常用选项
下表列出您可能更经常使用的命令行启动选项
命令行选项 | 描述 |
---|---|
快速启动 | |
-no-snapshot-load
|
执行冷启动并在退出时保存模拟器状态。 |
-no-snapshot-save
|
如果可能,执行快速启动,但在退出时不保存模拟器状态。 |
-no-snapshot
|
完全禁用快速启动功能,并且不加载或保存模拟器状态。 |
设备硬件 | |
-camera-back mode -camera-front mode
|
设置背向或前向摄像头的模拟模式。这将覆盖 AVD 中的任何摄像头设置。 `mode` 可以是以下任何值
例如 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` 是开发计算机操作系统使用的名称。第二个名称因操作系统而异。 从 SDK 工具 25.2.4 开始,需要 AVD 名称。 |
磁盘映像和内存 | |
-memory size
|
指定物理 RAM 大小,范围为 1536 到 8192 MB。例如 emulator @Pixel8_API_34 -memory 2048 此值将覆盖 AVD 设置。 |
-sdcard filepath
|
指定 SD 卡分区映像文件的名称和路径。例如
emulator @Pixel8_API_34 -sdcard C:/sd/sdcard.img 如果找不到该文件,模拟器仍会启动,但没有 SD 卡。命令将返回 **无 SD 卡映像** 警告。 如果不指定此选项,除非 AVD 指定其他内容,否则默认值为数据目录中的 `sdcard.img`。有关模拟 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 要禁用标签,请在其前面放置一个短横线 (-)。例如,以下选项显示所有调试消息,但与网络套接字和指标相关的消息除外
要获取标签和说明的列表,请使用 `-help-debug-tags` 选项。例如
emulator -help-debug-tags 您可以在
ANDROID_VERBOSE=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` 是以下值之一
以下示例以信息日志级别显示 GSM 组件消息
emulator @Pixel8_API_34 -logcat '*:s GSM:i' 如果在命令行上不提供 `-logcat` 选项,则模拟器会查找 有关 Logcat 和 `adb` 的更多信息,请参阅Logcat 命令行工具、使用 Logcat 查看和写入日志、 |
-show-kernel
|
在终端窗口中显示内核调试消息。例如
emulator @Pixel8_API_34 -show-kernel 此选项的一种用途是检查引导过程是否正常运行。 |
-verbose
|
将模拟器初始化消息打印到终端窗口。例如
emulator @Pixel8_API_34 -verbose 它显示在启动 AVD 中定义的虚拟设备时实际选择的哪些文件和设置。此选项与指定 `-debug-init` 相同。 |
网络 | |
-dns-server servers
|
使用指定的 DNS 服务器。`servers` 最多包含四个 DNS 服务器名称或 IP 地址的逗号分隔列表。例如emulator @Pixel8_API_34 -dns-server 192.0.2.0, 默认情况下,模拟器会尝试检测您正在使用的 DNS 服务器,并在模拟防火墙网络中设置特殊别名,以允许 Android 系统直接连接到服务器。使用 `-dns-server` 选项指定不同的 DNS 服务器列表。 |
-http-proxy proxy
|
通过指定的 HTTP/HTTPS 代理进行所有 TCP 连接。如果您的模拟器必须通过代理服务器访问互联网,您可以使用此选项或 `http_proxy` 环境变量来设置相应的重定向。例如
emulator @Pixel8_API_34 -http-proxy myserver:1981 `proxy` 可以是以下之一
可以省略 `http://` 前缀。 如果不提供此选项,模拟器会查找 `http_proxy` 环境变量,并自动使用任何与 `proxy` 格式匹配的值。有关更多信息,请参阅在使用代理的情况下使用模拟器。 |
-netdelay delay
|
将网络延迟模拟设置为以下 `delay` 值之一(以毫秒为单位)
例如 emulator @Pixel8_API_34 -netdelay gsm 模拟器支持网络限速以及更高的连接延迟。您可以通过皮肤配置或使用 `‑netspeed` 和 `-netdelay` 选项来定义它。 |
-netfast
|
禁用网络限速。例如
emulator @Pixel8_API_34 -netfast 此选项与指定 `-netspeed full -netdelay none` 相同。这些是这些选项的默认值。 |
-netspeed speed
|
设置网络速度模拟。使用以下 `speed` 值之一(以 kbps 为单位)指定最大网络上传和下载速度
例如 emulator @Pixel8_API_34 -netspeed edge 模拟器支持网络限速以及更高的连接延迟。您可以通过皮肤配置或使用 `‑netspeed` 和 `-netdelay` 选项来定义它。 |
-port port
|
设置用于控制台和adb 的TCP端口号。例如
emulator @Pixel8_API_34 -port 5556 对于在您的机器上运行的第一个虚拟设备实例,默认值为5554。虚拟设备通常占用一对相邻的端口:一个控制台端口和一个 端口分配通常与指定
请注意,如果 |
-ports
|
设置用于控制台和adb 的TCP端口。例如
emulator @Pixel8_API_34 -ports 5556,5559 有效的端口范围是5554到5682,允许64个并发虚拟设备。 我们建议尽可能使用 有关设置控制台和 |
-tcpdump filepath
|
捕获网络数据包并将其存储到文件中。例如
emulator @Pixel8_API_34 -tcpdump /path/dumpfile.cap 使用此选项开始捕获通过模拟器的虚拟以太网LAN发送的所有网络数据包。之后,您可以使用Wireshark之类的工具分析流量。 请注意,此选项捕获所有以太网数据包,而不限于TCP连接。 |
系统 | |
-accel mode
|
配置模拟器VM加速。例如
emulator @Pixel8_API_34 -accel auto 加速模拟仅适用于x86和x86_64系统映像。在Linux上,它依赖于KVM。在Windows和Mac上,它依赖于英特尔CPU和英特尔HAXM驱动程序。如果您没有模拟x86或x86_64设备,则会忽略此选项。
有关更多信息,请参阅为Android模拟器配置硬件加速。 |
-accel-check
|
检查是否安装了模拟器VM加速所需的虚拟机管理程序(HAXM或KVM)。例如
emulator -accel-check 有关更多信息,请参阅检查是否安装了虚拟机管理程序。 |
-engine engine
|
指定模拟器引擎
例如
emulator @Pixel8_API_34 -engine auto 自动检测应选择在模拟特定AVD时提供最佳性能的值。仅出于调试和比较目的使用 |
-gpu mode
|
选择GPU模拟模式。例如
emulator @Pixel8_API_34 -gpu swiftshader_indirect 有关更多信息,请参阅配置图形加速。 |
-no-accel
|
在使用x86或x86_64系统映像时禁用模拟器VM加速。它仅用于调试,与指定-accel off 相同。例如
emulator @Pixel8_API_34 -no-accel 有关更多信息,请参阅为Android模拟器配置硬件加速。 |
-nojni
-no-jni
|
禁用Android Dalvik或ART运行时中的扩展Java Native Interface (JNI) 检查。例如
emulator @Pixel8_API_34 -nojni 启动虚拟设备时,默认情况下会启用扩展JNI检查。有关更多信息,请参阅JNI提示。 |
-selinux {disabled|permissive}
|
在Linux操作系统上将安全增强型Linux (SELinux) 安全模块设置为disabled 或permissive 模式。例如
me-linux$ emulator @Pixel8_API_34 -selinux permissive 默认情况下,SELinux处于 |
-timezone timezone
|
将虚拟设备的时区设置为 emulator @Pixel8_API_34 -timezone Europe/Paris 默认情况下,模拟器使用您的开发计算机的时区。使用此选项指定不同的时区,或者如果自动检测不起作用。
指定的时区必须位于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` 可以是以下任何值
|
高级选项
下表中的命令行启动选项可用,但普通应用程序开发人员通常不使用。
在描述中,“工作目录”是指您在其中输入命令的终端中的当前目录。有关AVD系统目录和数据目录以及其中存储的文件的信息,请参阅有关默认目录和文件的部分。
其中一些选项适用于外部应用程序开发人员,而其中一些选项主要由平台开发人员使用。“应用程序开发人员”创建Android应用程序并在特定AVD上运行它们。“平台开发人员”在Android系统上工作,并在模拟器内运行它,而无需预先创建AVD。
高级选项 | 简要说明 |
---|---|
-bootchart timeout
|
启用引导图表,超时时间以秒为单位。一些Android系统映像具有修改后的init系统,该系统集成了引导图表功能。您可以使用此选项将引导图表超时周期传递给系统。如果您的init系统未激活引导图表,则此选项无效。此选项主要对平台开发人员有用,而不是外部应用程序开发人员。 例如 emulator @Pixel8_API_34 -bootchart 120 |
-cache filepath
|
指定缓存分区映像文件。提供文件名和绝对路径或相对于数据目录的路径来设置持久性缓存文件。如果文件不存在,模拟器会将其创建为空文件。 例如 emulator @Pixel8_API_34 -cache ~/.android/avd/Pixel8_API_34.avd/cache_persistent.img 如果您不使用此选项,则默认为名为 |
-cache-size size
|
以MB为单位设置缓存分区大小。 例如 emulator @Pixel8_API_34 -cache-size 1000 如果您不指定此选项,则默认为66 MB。通常,大多数应用程序开发人员不需要此选项,除非他们需要下载大于默认缓存的非常大的文件。有关缓存文件的更多信息,请参阅AVD数据目录。 |
-data filepath
|
设置用户数据分区映像文件。提供文件名和绝对路径或相对于工作目录的路径来设置持久性用户数据文件。如果文件不存在,模拟器将从默认的 例如 emulator @Pixel8_API_34 -data ~/.android/avd/Pixel8_API_34.avd/userdata-test.img 如果您不使用此选项,则默认为名为 |
-datadir dir
|
使用绝对路径指定数据目录。有关更多信息,请参阅AVD数据目录。 例如 emulator @Pixel8_API_34 -datadir ~/.android/avd/Pixel8_API_34.avd/mytest |
-force-32bit
|
在64位平台上使用32位模拟器。有时,此选项对于测试或调试很有用。例如,存在模拟器有时无法在64位Windows上运行,但32位可以运行的问题。此选项有助于执行比较以调试问题。这是一个示例 emulator @Pixel8_API_34 -force-32bit |
-help-disk-images
|
获取有关磁盘映像的帮助。此选项提供与应用程序和平台开发人员相关的相关信息。例如 emulator -help-disk-images |
-help-char-devices
|
获取有关字符 emulator -help-char-devices |
-help-sdk-images
|
获取与应用程序开发人员相关的磁盘映像的帮助。此选项获取有关使用SDK工具创建的AVD的映像文件位置的信息。例如 emulator -help-sdk-images |
-help-build-images
|
获取与平台开发者相关的磁盘镜像帮助信息。例如 emulator -help-build-images |
-initdata filepath -init-data filepath
|
指定数据分区的初始版本。擦除用户数据后,模拟器会将指定文件的内容复制到用户数据(默认情况下为 例如 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 如果未指定此选项,则默认为 |
-noaudio
-no-audio
|
禁用此虚拟设备的音频支持。某些Linux和Windows计算机的音频驱动程序存在故障,会导致不同的症状,例如阻止模拟器启动。在这种情况下,可以使用此选项来解决问题。或者,您可以使用 例如 emulator @Pixel8_API_34 -noaudio |
-nocache
-no-cache
|
启动模拟器时不使用缓存分区。如果不使用此选项,则默认为名为 例如 emulator @Pixel8_API_34 -nocache |
-no-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时钟时间。此选项在测试期间非常有用,因为它避免了突然的时间跳跃。时间更新大约每15秒发送一次到AVD。 例如 emulator @Pixel8_API_34 -no-snapshot-update-time |
-no-snapstorage
|
启动模拟器时不挂载文件来存储或加载状态快照,强制执行完整启动并禁用状态快照功能。此选项会覆盖 例如 emulator @Pixel8_API_34 -no-snapstorage |
-no-window
|
禁用模拟器上的图形窗口显示。此选项在运行没有显示器的服务器上的模拟器时非常有用。您可以通过 emulator @Pixel8_API_34 -no-window |
-partition-size size
|
指定系统数据分区大小(以MB为单位)。例如 emulator @Pixel8_API_34 -partition-size 1024 |
-prop name=value
|
在模拟器启动时设置Android系统属性。 emulator @Pixel8_API_34 -prop qemu.name=value -prop qemu.abc=xyz |
-qemu args
|
将参数传递给QEMU模拟器软件。使用此选项时,请确保它是指定的最后一个选项,因为其后的所有选项都被解释为QEMU特定的选项。此选项非常高级,仅应由非常熟悉QEMU *和*Android模拟的开发人员使用。 |
-qemu -h
|
显示 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 如果不使用此选项,则默认为系统目录中的 |
-report-console socket
|
在启动模拟之前向远程第三方报告控制台端口。这对于自动化测试脚本很有用。
更多信息,请使用 |
-shell
|
在当前终端上创建一个root shell控制台。此选项与
例如 emulator @Pixel8_API_34 -shell |
-snapshot name
|
指定快照存储文件内用于自动启动和保存操作的快照名称。 模拟器可以从较早的状态快照恢复执行,而不是执行完整的引导序列,这通常要快得多。提供此选项时,模拟器将从快照镜像加载该名称的快照,并在退出时将其保存回同一名称。 如果不使用此选项,则默认为完整的引导序列。如果指定的快照不存在,则模拟器将改为执行完整的引导序列并执行保存操作。 有关指定快照存储文件和默认文件的详细信息,请参阅 emulator @Pixel8_API_34 -snapshot snapshot2 请记住,在加载快照的过程中,系统、用户数据和SD卡镜像的所有内容都将被其在创建快照时保存的内容覆盖。除非您将此信息保存在不同的快照中,否则自那时以来的任何更改都将丢失。 您还可以使用 |
-snapshot-list
|
显示可用快照的列表。此命令打印存储在启动模拟器时使用的快照存储文件中的快照表,然后退出。如果还指定了 例如 emulator @Pixel8_API_34 -snapshot-list -snapstorage ~/.android/avd/Pixel8_API_34.avd/snapshots-test.img 您可以使用输出中的ID和TAG列值作为 |
-snapstorage filepath
|
指定包含所有状态快照的存储库文件。执行期间进行的所有快照都将保存在此文件中。仅此文件中的快照可在模拟器运行期间恢复。 例如 emulator @Pixel8_API_34 -snapstorage ~/.android/avd/Pixel8_API_34.avd/snapshots-test.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 如果不使用此选项,则默认为系统目录中的 |
-use-system-libs
|
在Linux上,使用系统 例如 me-linux$ emulator @Pixel8_API_34 -use-system-libs |
-writable-system
|
使用此选项可在模拟会话期间获得可写的系统镜像。为此
使用此标志会创建系统镜像的临时副本,该副本可能非常大,最多几百MB,但会在模拟器退出时被销毁。 |
已弃用的选项
以下命令行选项已弃用
-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
您可以在启动虚拟设备之前在终端窗口中设置环境变量,也可以通过操作系统的用户设置进行设置。例如,在Linux上的.bashrc
文件中进行设置。
列出调试标签
要打印-debug
选项的标签列表,请输入以下命令
emulator -help-debug-tags
-debug
选项允许您启用或禁用来自特定模拟器组件的调试消息,这些消息由标签指定。