Android 模拟器包含一个网络模拟器,可让您在不使用物理无线装置的情况下开发和测试 Android 应用。
本页介绍了用于控制网络模拟器功能的命令行选项。
从命令行启动模拟器时,请在模拟器标志中使用 -netsim-args 标志,以将实参传递给网络模拟器。
emulator -netsim-args="arg1 [arg2 ...]"
例如,如需启用数据包捕获、日志记录并设置特定的 HCI 端口,您可以使用:
emulator -netsim-args="--pcap --logtostderr --verbose --hci-port 12345"
Netsim 配置
这些标志用于控制 netsim 守护程序的一般行为和设置。
-l, --logtostderr:设置日志消息是发送到 stderr 还是日志文件。有助于直接在模拟器输出中查看日志。-v, --verbose:启用详细模式。此模式会输出更详细的日志,有助于调试复杂问题。--hci-port <HCI_PORT>:设置自定义 HCI 端口。适用于运行多个模拟器或连接到特定 HCI 端口。
指定工件的目录
如需为网络模拟器制品指定目录,请设置环境变量 $ANDROID_TMP:
export ANDROID_TMP=/path/to/your/directory
网络模拟器会将制品保存在以下目录中:$ANDROID_TMP/android/netsimd/。如果设置了环境变量 $USER,网络模拟器会将制品保存在 $ANDROID_TMP/android{-$USER}/netsimd/ 中。
捕获网络数据包
如需启用数据包捕获,请将 --pcap 实参与模拟器搭配使用。
emulator -netsim-args="--pcap"
此功能有助于调试网络问题和分析流量。网络模拟器会为每个无线芯片保存一个数据包捕获 (pcap) 文件。您可以使用 Wireshark 等工具打开这些文件。网络模拟器会将数据包捕获文件保存在 netsimd 制品目录的 pcap 子目录中。
配置 Wi-Fi 接入点(自定义 SSID 和加密)
如需配置 Wi-Fi 接入点,请将 --wifi 实参与模拟器搭配使用。
例如:
emulator -netsim-args="--wifi <SSID> <PASSWORD>"
SSID:网络名称。PASSWORD:网络密码是可选的,必须包含 8 个或更多字符;设置后,接入点将使用 WPA2 (CCMP) 进行加密。
设置接收信号强度 (RSSI)
网络模拟器支持使用 --rssi 标志为特定无线电设置特定 RSSI 值。
emulator -netsim-args="--rssi <PHY_KIND:RSSI_VALUE>"
PHY_KIND:蓝牙无线电的类型(例如ble、bt_classic)。此参数支持不区分大小写的别名。RSSI_VALUE:RSSI 值,一个 i8(整数)。
例如,以下命令将 BLE 流量的 RSSI 设置为 -65 dBm:
emulator -netsim-args="--rssi=ble:-65"
您可以针对不同的无线装置多次指定此标志(例如,--rssi=bt_classic:-65 --rssi=ble:-72)。