Các tính năng mạng nâng cao của trình mô phỏng

Trình mô phỏng Android có một trình mô phỏng mạng cho phép bạn phát triển và kiểm thử các ứng dụng Android mà không cần sử dụng đài vô tuyến thực.

Trang này mô tả các lựa chọn dòng lệnh để kiểm soát các tính năng của trình mô phỏng mạng.

Khi khởi động trình mô phỏng từ dòng lệnh, hãy sử dụng cờ -netsim-args trong cờ trình mô phỏng để truyền các đối số đến trình mô phỏng mạng.

emulator -netsim-args="arg1 [arg2 ...]"

Ví dụ: để bật tính năng ghi nhật ký và chụp gói, đồng thời đặt một cổng HCI cụ thể, bạn có thể sử dụng:

emulator -netsim-args="--pcap --logtostderr --verbose --hci-port 12345"

Cấu hình Netsim

Các cờ này kiểm soát hành vi và chế độ thiết lập chung của trình nền netsim.

  • -l, --logtostderr: Đặt xem thông báo nhật ký có chuyển đến stderr thay vì tệp nhật ký hay không. Hữu ích khi xem nhật ký ngay trong đầu ra của trình mô phỏng.
  • -v, --verbose: Bật chế độ chi tiết. Chế độ này in nhật ký chi tiết hơn, rất hữu ích khi gỡ lỗi các vấn đề phức tạp.
  • --hci-port <HCI_PORT>: Đặt một cổng HCI tuỳ chỉnh. Hữu ích khi chạy nhiều trình mô phỏng hoặc kết nối với một cổng HCI cụ thể.

Chỉ định thư mục cho cấu phần phần mềm

Để chỉ định một thư mục cho các cấu phần phần mềm của trình mô phỏng mạng, hãy đặt biến môi trường $ANDROID_TMP:

export ANDROID_TMP=/path/to/your/directory

Trình mô phỏng mạng sẽ lưu các cấu phần phần mềm trong thư mục sau: $ANDROID_TMP/android/netsimd/. Nếu bạn đặt biến môi trường $USER, trình mô phỏng mạng sẽ lưu các cấu phần phần mềm trong $ANDROID_TMP/android{-$USER}/netsimd/.

Ghi lại các gói dữ liệu có trong mạng

Để bật tính năng ghi lại gói, hãy sử dụng đối số --pcap với trình mô phỏng.

emulator -netsim-args="--pcap"

Tính năng này hữu ích cho việc gỡ lỗi các vấn đề về mạng và phân tích lưu lượng truy cập. Trình mô phỏng mạng sẽ lưu một tệp ghi lại gói (pcap) cho mỗi chip vô tuyến. Bạn có thể mở các tệp này bằng những công cụ như Wireshark. Trình mô phỏng mạng sẽ lưu các tệp ghi lại gói trong thư mục con pcap của thư mục cấu phần phần mềm netsimd.

Định cấu hình điểm truy cập Wi-Fi (SSID và chế độ mã hoá tuỳ chỉnh)

Để định cấu hình một điểm truy cập Wi-Fi, hãy sử dụng đối số --wifi với trình mô phỏng. Ví dụ:

emulator -netsim-args="--wifi <SSID> <PASSWORD>"
  • SSID: Tên mạng.
  • PASSWORD: Mật khẩu mạng là không bắt buộc và phải có từ 8 ký tự trở lên; khi được đặt, điểm truy cập sẽ được mã hoá bằng WPA2 (CCMP).

Đặt Cường độ tín hiệu nhận được (RSSI)

Trình mô phỏng mạng hỗ trợ việc đặt các giá trị RSSI cụ thể cho một đài cụ thể bằng cờ --rssi.

emulator -netsim-args="--rssi <PHY_KIND:RSSI_VALUE>"
  • PHY_KIND: Loại đài Bluetooth (ví dụ: ble, bt_classic). Tham số này hỗ trợ các bí danh không phân biệt chữ hoa chữ thường.
  • RSSI_VALUE: Giá trị RSSI, một i8 (số nguyên).

Ví dụ: lệnh sau đây đặt RSSI cho lưu lượng truy cập BLE thành -65 dBm:

emulator -netsim-args="--rssi=ble:-65"

Bạn có thể chỉ định cờ này nhiều lần cho các đài phát khác nhau (ví dụ: --rssi=bt_classic:-65 --rssi=ble:-72).