Bắt đầu trình mô phỏng từ dòng lệnh

SDK Android bao gồm trình mô phỏng thiết bị Android — một thiết bị ảo chạy trên máy tính. Trình mô phỏng Android cho phép bạn phát triển và thử nghiệm các ứng dụng Android mà không cần sử dụng thiết bị thực.

Trang này mô tả các tính năng dòng lệnh mà bạn có thể sử dụng với Trình mô phỏng Android. Để biết thông tin về cách sử dụng giao diện người dùng Trình mô phỏng Android, hãy xem Chạy ứng dụng trên Trình mô phỏng Android.

Khởi động trình mô phỏng

Hãy dùng lệnh emulator để khởi động trình mô phỏng, thay cho cách chạy dự án của bạn hoặc bắt đầu sử dụng thông qua Trình quản lý AVD.

Dưới đây là cú pháp dòng lệnh cơ bản để khởi động một thiết bị ảo từ một lời nhắc kết thúc:

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

Hoặc

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

Ví dụ: nếu bạn chạy trình mô phỏng từ trong Android Studio chạy trên máy Mac, dòng lệnh mặc định sẽ tương tự như sau:

/Users/janedoe/Library/Android/sdk/emulator/emulator -avd Nexus_5X_API_23 -netdelay none -netspeed full

Bạn có thể chỉ định các tùy chọn khởi động khi khởi động trình mô phỏng, nhưng không nên bật sau này.

Đối với danh sách tên AVD, hãy nhập lệnh sau:

emulator -list-avds

Khi bạn sử dụng tùy chọn này, tùy chọn sẽ hiển thị danh sách tên AVD từ thư mục chính của Android. Lưu ý rằng bạn có thể ghi đè thư mục gốc mặc định bằng cách đặt biến môi trường ANDROID_SDK_HOME: gốc của thư mục dành riêng cho người dùng lưu trữ tất cả nội dung cấu hình và AVD. Bạn có thể đặt biến môi trường trong cửa sổ dòng lệnh trước khi chạy một thiết bị ảo hoặc thiết lập thông qua tùy chọn cài đặt người dùng trong hệ điều hành; ví dụ: trong tệp .bashrc của bạn trên Linux.

Để dừng Trình mô phỏng Android, chỉ cần đóng cửa sổ trình mô phỏng.

Cài đặt ứng dụng

Ngoài việc cài đặt một ứng dụng thông qua Android Studio hoặc giao diện người dùng trình mô phỏng, bạn còn có thể cài đặt ứng dụng của mình trên một thiết bị ảo bằng cách sử dụng adb Tiện ích

Để cài đặt một ứng dụng bằng cách sử dụng adb, sau đó chạy và thử nghiệm ứng dụng, hãy làm theo các bước chung sau:

  1. Tạo và đóng gói ứng dụng của bạn thành một APK như mô tả trong phần Tạo và chạy ứng dụng của bạn.
  2. Khởi động trình mô phỏng từ dòng lệnh như mô tả trong phần trước, sử dụng mọi tùy chọn khởi động cần thiết.
  3. Cài đặt ứng dụng của bạn bằng adb.
  4. Chạy và thử nghiệm ứng dụng của bạn trên trình mô phỏng.
    Trong khi trình mô phỏng đang chạy, bạn cũng có thể sử dụng Bảng điều khiển trình mô phỏng để thực hiện lệnh nếu cần.
  5. Thiết bị ảo lưu giữ ứng dụng này và dữ liệu trạng thái của ứng dụng sau khi khởi động lại, trong phân vùng đĩa dữ liệu người dùng (userdata-qemu.img). Để xóa dữ liệu này, hãy khởi động trình mô phỏng bằng tùy chọn -wipe-data hoặc xóa ví dụ: trong Trình quản lý AVD. Để biết thêm thông tin về phân vùng dữ liệu người dùng và dung lượng lưu trữ khác, hãy xem phần sau đây.
    Để gỡ cài đặt một ứng dụng, hãy làm giống như trên thiết bị Android.

Lưu ý: Tiện ích adb xem thiết bị ảo là thiết bị thực tế. Vì lý do này, bạn có thể phải sử dụng cờ -d với một số lệnh adb phổ biến, chẳng hạn như install. Cờ -d cho phép bạn chỉ định thiết bị nào được kết nối sẽ dùng làm mục tiêu của một lệnh. Nếu bạn không chỉ định -d, trình mô phỏng sẽ nhắm mục tiêu thiết bị đầu tiên trong danh sách.

Tìm hiểu về các thư mục và tệp mặc định

Trình mô phỏng sử dụng các tệp liên kết, trong đó hệ thống AVD và các thư mục dữ liệu là quan trọng nhất. Bạn nên nắm được cấu trúc và tệp của thư mục trình mô phỏng khi chỉ định các tùy chọn dòng lệnh. Mặc dù, thông thường, bạn không cần sửa đổi các thư mục hoặc tệp mặc định.

Trình mô phỏng Android sử dụng bộ điều khiển mô phỏng nhanh (QEMU). Các phiên bản ban đầu của Trình mô phỏng Android sử dụng QEMU 1 (cá vàng) và các phiên bản sau đó sử dụng QEMU 2 (ranchu).

Thư mục hệ thống AVD

Thư mục hệ thống chứa các hình ảnh hệ thống Android mà trình mô phỏng sử dụng để mô phỏng hệ điều hành. Tệp có các tệp dành riêng cho nền tảng, chỉ đọc được chia sẻ bởi tất cả các AVD cùng loại, bao gồm cấp API, cấu trúc CPU và biến thể Android. Vị trí mặc định là:

  • Mac OS X và Linux – ~/Library/Android/sdk/system-images/android-apiLevel/variant/arch/
  • Microsoft Windows XP - C:\Documents and Settings\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\
  • Windows Vista - C:\Users\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\

Địa điểm:

  • apiLevel là một cấp độ API dạng số hoặc một chữ cái cho các bản phát hành xem trước. Ví dụ: android-M cho biết bản xem trước Android Marshmallow. Khi phát hành, API này đã trở thành API cấp 23, do android-23 chỉ định.
  • variant là tên tương ứng với các tính năng cụ thể được triển khai bởi hình ảnh hệ thống; ví dụ: google_apis hoặc android-wear.
  • arch là cấu trúc CPU mục tiêu; ví dụ: x86.

Sử dụng tùy chọn -sysdir để chỉ định thư mục hệ thống khác cho AVD.

Trình mô phỏng đọc các tệp sau từ thư mục hệ thống.

Tệp Mô tả Tùy chọn để chỉ định tệp khác nhau
kernel-qemu hoặc kernel-ranchu Hình ảnh hạt nhân nhị phân cho AVD. kernel-ranchu là trình mô phỏng QEMU 2, phiên bản mới nhất. -kernel
system.img Phiên bản ban đầu chỉ có thể đọc của hình ảnh hệ thống; cụ thể là phân vùng chứa các thư viện hệ thống và dữ liệu tương ứng với cấp độ API và biến thể. -system
ramdisk.img Hình ảnh phân vùng khởi động. Đây là tập hợp con của system.img được tải ban đầu bởi hạt nhân trước khi hình ảnh hệ thống được gắn. Dữ liệu này thường chỉ chứa một số tệp nhị phân và tập lệnh khởi chạy. -ramdisk
userdata.img Phiên bản ban đầu của phân vùng dữ liệu xuất hiện dưới dạng data/ trong hệ thống được mô phỏng và chứa tất cả dữ liệu có thể ghi cho AVD. Trình mô phỏng sẽ sử dụng tệp này khi bạn tạo AVD mới hoặc sử dụng tùy chọn ‑wipe-data. Để biết thêm thông tin, hãy xem nội dung mô tả tệp userdata-qemu.img trong phần sau. -initdata
-init-data

Thư mục dữ liệu AVD

Thư mục dữ liệu AVD, còn được gọi là thư mục nội dung, dành riêng cho một bản sao AVD duy nhất và chứa tất cả dữ liệu có thể sửa đổi cho AVD.

Vị trí mặc định như sau, trong đó name là AVD:

  • Mac OS X và Linux – ~/.android/avd/name.avd/
  • Microsoft Windows XP - C:\Documents and Settings\user\.android\name.avd\
  • Windows Vista trở lên - C:\Users\user\.android\name.avd\

Dùng tùy chọn -datadir để chỉ định một thư mục dữ liệu AVD khác.

Bảng sau liệt kê các tệp quan trọng nhất có trong thư mục này.

Tệp Mô tả Tùy chọn để chỉ định tệp khác nhau
userdata-qemu.img

Nội dung của phân vùng dữ liệu, xuất hiện dưới dạng data/ trong hệ thống mô phỏng. Khi bạn tạo AVD mới hoặc khi bạn sử dụng tùy chọn -wipe-data để đặt lại AVD về giá trị mặc định ban đầu, trình mô phỏng sẽ sao chép tệp userdata.img trong thư mục hệ thống để tạo tệp này.

Mỗi phiên bản thiết bị ảo đều sử dụng hình ảnh dữ liệu người dùng có thể ghi để lưu trữ dữ liệu người dùng và phiên cụ thể. Ví dụ: API này sử dụng hình ảnh để lưu trữ dữ liệu, các tùy chọn cài đặt, cơ sở dữ liệu và tệp đã cài đặt của một người dùng duy nhất. Mỗi người dùng có một thư mục ANDROID_SDK_HOME khác nhau lưu trữ các thư mục dữ liệu cho AVD do người dùng đó tạo; mỗi AVD có một tệp userdata-qemu.img duy nhất.

-data
cache.img Hình ảnh phân vùng bộ nhớ đệm, xuất hiện dưới dạng cache/ trong hệ thống mô phỏng. Biểu tượng trống sẽ trống khi bạn tạo AVD lần đầu hoặc sử dụng tùy chọn -wipe-data. Nó lưu trữ các tệp tải xuống tạm thời và do trình quản lý tải xuống, đôi khi là hệ thống tải lên; ví dụ: trình duyệt sử dụng trình duyệt này để lưu các trang web và hình ảnh đã tải xuống vào bộ nhớ đệm trong khi trình mô phỏng đang chạy. Khi bạn tắt nguồn thiết bị ảo, tệp sẽ bị xóa. Bạn có thể giữ nguyên tệp bằng cách sử dụng tùy chọn -cache. -cache
sdcard.img

(Không bắt buộc) Hình ảnh phân vùng thẻ SD cho phép bạn mô phỏng thẻ SD trên thiết bị ảo. Bạn có thể tạo tệp hình ảnh thẻ SD trong Trình quản lý AVD hoặc sử dụng công cụ mksdcard. Tệp được lưu trữ trên máy tính phát triển của bạn và phải được tải khi khởi động.

Khi xác định AVD trong Trình quản lý AVD, bạn có thể chọn sử dụng tệp thẻ SD được quản lý tự động hoặc tệp mà bạn đã tạo bằng công cụ mksdcard. Bạn có thể xem tệp sdcard.img liên kết với AVD trong Trình quản lý AVD. Tùy chọn -sdcard sẽ ghi đè tệp thẻ SD được chỉ định trong AVD.

Bạn có thể duyệt xem, gửi tệp và sao chép cũng như xóa tệp khỏi thẻ SD mô phỏng bằng cách sử dụng giao diện người dùng trình mô phỏng hoặc tiện ích adb trong khi thiết bị ảo đang chạy. Bạn không thể xóa thẻ SD mô phỏng khỏi thiết bị ảo đang chạy.

Để sao chép tệp vào tệp thẻ SD trước khi tải, bạn có thể lắp tệp hình ảnh dưới dạng thiết bị lặp rồi sao chép tệp. Hoặc sử dụng một tiện ích như gói mtools để sao chép trực tiếp các tệp vào hình ảnh.

Trình mô phỏng coi tệp là một tệp byte để định dạng thẻ SD không quan trọng.

Xin lưu ý rằng tùy chọn -wipe-data không ảnh hưởng đến tệp này. Nếu muốn xóa tệp, bạn cần xóa tệp, sau đó tạo lại tệp bằng Trình quản lý AVD hoặc công cụ mksdcard. Việc thay đổi kích thước tệp cũng sẽ xóa tệp và tạo tệp mới.

-sdcard

Liệt kê các thư mục và tệp mà trình mô phỏng sử dụng

Bạn có thể khám phá vị trí của tệp theo hai cách:

  • Khi bạn khởi động trình mô phỏng từ dòng lệnh, hãy sử dụng tùy chọn -verbose hoặc -debug init và xem kết quả.
  • Hãy dùng lệnh emulator -help-option để liệt kê một thư mục mặc định. Ví dụ:
    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.

Tùy chọn khởi động dòng lệnh

Phần này liệt kê các tùy chọn mà bạn có thể cung cấp trên dòng lệnh khi khởi động trình mô phỏng.

Lưu ý: Trình mô phỏng Android đang liên tục được phát triển để giúp ứng dụng này đáng tin cậy hơn. Để biết trạng thái về các vấn đề được báo cáo dựa trên nhiều tùy chọn dòng lệnh và để báo cáo lỗi, hãy xem Trình theo dõi vấn đề của Android.

Các tùy chọn thường dùng

Bảng sau liệt kê các tùy chọn khởi động dòng lệnh mà bạn có thể sử dụng thường xuyên hơn.

Tùy chọn dòng lệnh Mô tả
Khởi động nhanh
-no-snapshot-load Thực hiện một quá trình khởi động nguội và lưu trạng thái trình mô phỏng khi thoát.
-no-snapshot-save Thực hiện khởi động nhanh nếu có thể, nhưng không lưu trạng thái trình mô phỏng khi thoát.
-no-snapshot Tắt hoàn toàn tính năng Khởi động nhanh. Tính năng này không tải hoặc lưu trạng thái của trình mô phỏng.
Phần cứng thiết bị
-camera-back mode
-camera-front mode
Đặt chế độ mô phỏng cho máy ảnh mặt sau hoặc mặt trước. Chế độ này sẽ ghi đè mọi chế độ cài đặt của máy ảnh trong AVD.

mode có thể là bất kỳ giá trị nào sau đây:

  • emulated – Trình mô phỏng mô phỏng một máy ảnh trong phần mềm.
  • webcamn – Trình mô phỏng sử dụng một webcam kết nối với máy tính đang phát triển của bạn, được chỉ định theo số điện thoại. Đối với danh sách webcam, hãy sử dụng tùy chọn -webcam-list; ví dụ: webcam0.
  • none – Tắt máy ảnh trong thiết bị ảo.

Ví dụ:


emulator @Nexus_5X_API_23 -camera-back webcam0
-webcam-list Liệt kê các máy ảnh web trên máy tính phát triển của bạn có sẵn để mô phỏng. Ví dụ:

emulator @Nexus_5X_API_23 -webcam-list
        List of web cameras connected to the computer:
        Camera 'webcam0' is connected to device 'webcam0'
        on channel 0 using pixel format 'UYVY'

Trong ví dụ này, webcam0 đầu tiên là tên mà bạn sử dụng trên dòng lệnh. webcam0 thứ hai là tên mà hệ điều hành sử dụng trên máy tính đang phát triển. Tên thứ hai sẽ khác nhau tùy theo hệ điều hành.

Kể từ Công cụ SDK 25.2.4, tên AVD là bắt buộc, mặc dù tên này có thể không nằm trong tương lai.

Hình ảnh và bộ nhớ ổ đĩa
-memory size

Chỉ định kích thước RAM thực từ 128 đến 4096 MB. Ví dụ:


emulator @Nexus_5X_API_23 -memory 2048

Giá trị này ghi đè chế độ cài đặt AVD.

-sdcard filepath Chỉ định tên tệp và đường dẫn tới tệp hình ảnh phân vùng thẻ SD. Ví dụ:


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

Nếu không tìm thấy tệp, trình mô phỏng sẽ vẫn khởi chạy, nhưng không có thẻ SD; lệnh này sẽ trả về cảnh báo Không có hình ảnh thẻ SD.

Nếu bạn không chỉ định tùy chọn này, giá trị mặc định sẽ là sdcard.img trong thư mục dữ liệu (trừ khi AVD chỉ định giá trị khác). Để biết thông tin chi tiết về thẻ SD mô phỏng, hãy xem thư mục dữ liệu AVD.

-wipe-data Xóa dữ liệu người dùng và sao chép dữ liệu khỏi tệp dữ liệu ban đầu. Tùy chọn này sẽ xóa dữ liệu của thiết bị ảo và đưa dữ liệu về trạng thái như khi được xác định lần đầu. Mọi ứng dụng và tùy chọn cài đặt đã cài đặt đều sẽ bị xóa. Ví dụ:


emulator @Nexus_5X_API_23 -wipe-data

Theo mặc định, tệp dữ liệu người dùng là userdata-qemu.img và tệp dữ liệu ban đầu là userdata.img, đều nằm trong thư mục dữ liệu. Tùy chọn -wipe-data không ảnh hưởng đến tệp sdcard.img. Để biết thêm thông tin về dữ liệu người dùng, hãy xem phần Tìm hiểu về các thư mục và tệp mặc định.

Gỡ lỗi
-debug tags Bật hoặc tắt tùy chọn hiển thị thông báo gỡ lỗi cho một hoặc nhiều thẻ. Phân tách nhiều thẻ bằng dấu cách, dấu phẩy hoặc cột. Ví dụ:


$ emulator @Nexus_5X_API_23 -debug init,metrics

Để vô hiệu hóa thẻ, hãy đặt dấu gạch ngang (-) trước thẻ đó; ví dụ: tùy chọn sau đây hiển thị tất cả các thông báo gỡ lỗi, ngoại trừ những thông báo liên quan đến các cổng mạng và chỉ số:

-debug all,-socket,-metrics

Để xem danh sách các thẻ và nội dung mô tả, hãy dùng tùy chọn -help-debug-tags. Ví dụ:


emulator -help-debug-tags

Bạn có thể xác định các thẻ gỡ lỗi mặc định trong biến môi trường ANDROID_VERBOSE. Xác định các thẻ bạn muốn sử dụng trong danh sách được phân tách bằng dấu phẩy. Dưới đây là ví dụ cho thấy thẻ được xác định bằng các thẻ socketgles:


ANDROID_VERBOSE=socket,gles

Thời điểm này tương đương với việc sử dụng:

-debug-socket -debug-gles

-debug-tag
-debug-no-tag
Bật một loại thông báo gỡ lỗi cụ thể. Sử dụng biểu mẫu no để tắt một loại thông báo gỡ lỗi. Ví dụ:


emulator @Nexus_5X_API_23 -debug-all -debug-no-metrics

Để xem danh sách thẻ, hãy dùng lệnh emulator -help-debug-tags.

-logcat logtags Bật hiển thị thông báo logcat cho một hoặc nhiều thẻ và ghi vào cửa sổ thiết bị đầu cuối. Ví dụ: lệnh sau bật thông báo lỗi từ tất cả các thành phần:


emulator @Nexus_5X_API_23 -logcat *:e

logtags dùng định dạng giống như lệnh adb logcat logtags (hãy nhập adb logcat -help để biết thêm thông tin). Đây là danh sách các bộ lọc nhật ký được phân tách bằng dấu cách hoặc dấu phẩy có định dạng componentName:logLevel. componentName là dấu hoa thị ký tự đại diện (*) hoặc tên thành phần, chẳng hạn như ActivityManager, SystemServer, InputManager, WindowsManager, v.v. logLevel là một trong các giá trị sau:

  • v - Chi tiết
  • d - Gỡ lỗi
  • i - Nhiều thông tin
  • w – cấp nhật ký cảnh báo
  • e - error
  • s - silent

Ví dụ sau đây cho thấy các thông báo thành phần GSM ở cấp độ nhật ký cung cấp thông tin:


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

Nếu bạn không cung cấp tùy chọn -logcat trên dòng lệnh, trình mô phỏng sẽ tìm biến môi trường ANDROID_LOG_TAGS. Nếu bạn xác định ANDROID_LOG_TAGS có giá trị logtags hợp lệ và không để trống, thì trình mô phỏng sẽ sử dụng giá trị của trình mô phỏng đó để bật đầu ra logcat cho thiết bị đầu cuối theo mặc định. Bạn cũng có thể chuyển hướng các thông báo tương tự hoặc thông báo khác đến thiết bị đầu cuối thông qua adb. Để biết thêm thông tin về logcat và adb, hãy xemlogcat Công cụ dòng lệnh, Ghi và xem nhật ký với Logcat, Củi lớp vàtham chiếu lệnh adb ,

-show-kernel Hiện thông báo gỡ lỗi nhân cửa sổ trong cửa sổ đầu cuối. Ví dụ:


emulator @Nexus_5X_API_23 -show-kernel

Một cách sử dụng tùy chọn này là kiểm tra xem quy trình khởi động có hoạt động chính xác không.

-verbose In thông báo khởi chạy trình mô phỏng tới cửa sổ dòng lệnh. Ví dụ:


emulator @Nexus_5X_API_23 -verbose

Chế độ này cho biết những tệp và tùy chọn cài đặt thực sự được chọn khi khởi động một thiết bị ảo được xác định trong AVD. Tùy chọn này giống với việc chỉ định -debug-init.

Mạng
-dns-server servers Sử dụng máy chủ DNS được chỉ định. servers là một danh sách gồm tối đa 4 tên máy chủ DNS hoặc địa chỉ IP được phân tách bằng dấu phẩy. Ví dụ:

emulator @Nexus_5X_API_23 -dns-server 192.0.2.0,
192.0.2.255

Theo mặc định, trình mô phỏng sẽ cố gắng phát hiện các máy chủ DNS mà bạn đang sử dụng và thiết lập các bí danh đặc biệt trong mạng tường lửa được mô phỏng để cho phép hệ thống Android kết nối trực tiếp với các máy chủ đó. Sử dụng tùy chọn -dns-server để chỉ định một danh sách máy chủ DNS khác.

-http-proxy proxy Thực hiện tất cả các kết nối TCP thông qua một proxy HTTP/HTTPS được chỉ định. Nếu trình mô phỏng của bạn phải truy cập Internet thông qua một máy chủ proxy, bạn có thể dùng tùy chọn này hoặc biến môi trường http_proxy để thiết lập lệnh chuyển hướng thích hợp. Ví dụ:


emulator @Nexus_5X_API_23 -http-proxy myserver:1981

proxyCó thể là một trong những trạng thái sau đây:
http://server:port
http://username:password@server:port

Bạn có thể bỏ qua tiền tố http://.

Nếu bạn không cung cấp tùy chọn này, trình mô phỏng sẽ tra cứu biến môi trường http_proxy và tự động sử dụng bất kỳ giá trị nào khớp với định dạng proxy. Để biết thêm thông tin, hãy xem phần Sử dụng trình mô phỏng với một proxy.

-netdelay delay

Đặt quy trình mô phỏng độ trễ mạng thành một trong các giá trị delay sau đây tính bằng mili giây:

  • gsm – GSM/CSD (tối thiểu 150, tối đa 550).
  • hscsd – HSCSD (tối thiểu 80, tối đa 400).
  • gprs – GPRS (tối thiểu 35, tối đa 200).
  • edge - EDGE/EGPRS (tối thiểu 80, tối đa 400).
  • umts – UMTS/3G (tối thiểu 35 giây, tối đa 200 người).
  • hsdpa – HSDPA (tối thiểu 0, tối đa 0).
  • lte – LTE (tối thiểu 0, tối đa 0).
  • evdo – EVDO (tối thiểu 0, tối đa 0).
  • none – Không có độ trễ, mặc định (tối thiểu 0, tối đa 0).
  • num – Chỉ định độ trễ chính xác.
  • min:max – Chỉ định độ trễ tối thiểu và tối đa riêng lẻ.

Ví dụ:


emulator @Nexus_5X_API_23 -netdelay gsm

Trình mô phỏng hỗ trợ hạn chế băng thông mạng (hạn chế băng thông mạng tối đa, còn được gọi là định hình mạng) cũng như thời gian chờ kết nối cao hơn. Bạn có thể xác định giá trị này thông qua cấu hình giao diện hoặc bằng các tùy chọn ‑netspeed-netdelay.

-netfast Tắt tính năng hạn chế mạng. Ví dụ:


emulator @Nexus_5X_API_23 -netfast

Tùy chọn này giống với việc chỉ định -netspeed full -netdelay none. Đây là các giá trị mặc định cho các tùy chọn này.

-netspeed speed

Đặt mô phỏng tốc độ mạng. Chỉ định tốc độ tải lên và tải xuống tối đa cho mạng bằng một trong các giá trị speed sau: kb/giây:

  • gsm – GSM/CSD (tăng: 14,4, giảm: 14,4).
  • hscsd - HSCSD (tăng: 14,4, giảm: 57,6).
  • gprs - GPRS (tăng: 28,8, giảm: 57,6).
  • edge - EDGE/EGPRS (tăng: 473,6, giảm: 473,6).
  • umts – UMTS/3G (tăng: 384,0 xuống: 384,0).
  • hsdpa – HSDPA (tăng: 5.760,0, giảm: 13.980,0).
  • lte – LTE (tăng: 58.000, giảm: 173.000).
  • evdo – EVDO (tăng lên: 75.000, giảm: 280.000).
  • full – Không giới hạn, mặc định (lên: 0, giảm, 0).
  • num – Chỉ định cả tốc độ tải lên và tốc độ tải xuống.
  • up:down – Chỉ định tốc độ lên và xuống của từng cá nhân.

Ví dụ:


emulator @Nexus_5X_API_23 -netspeed edge

Trình mô phỏng hỗ trợ hạn chế băng thông mạng (hạn chế băng thông mạng tối đa, còn được gọi là định hình mạng) cũng như thời gian chờ kết nối cao hơn. Bạn có thể xác định giá trị này thông qua cấu hình giao diện hoặc bằng các tùy chọn ‑netspeed-netdelay.

-port port Đặt số cổng TCP dùng cho bảng điều khiển và adb. Ví dụ:


emulator @Nexus_5X_API_23 -port 5556

Giá trị mặc định là 5554 cho bản sao thiết bị ảo đầu tiên chạy trên máy của bạn. Một thiết bị ảo thường chiếm một cặp cổng liền kề: cổng console và cổng adb. Bảng điều khiển của thiết bị ảo đầu tiên chạy trên một máy cụ thể có sử dụng cổng Console 5554 và cổng adb 5555. Các trường hợp tiếp theo sẽ sử dụng số cổng tăng lên hai lần, ví dụ: 5556/5557, 5558/5559, v.v. Phạm vi là 5554 đến 5682, cho phép hiển thị đồng thời 64 thiết bị ảo.

Việc chỉ định cổng thường giống với việc chỉ định -ports port,{port + 1}. {port + 1} phải là miễn phí và sẽ được đặt trước cho adb. Nếu bất kỳ cổng Console hoặc adb nào cũng đang được sử dụng, thì trình mô phỏng sẽ không khởi động. Tùy chọn ‑port báo cáo những cổng và số sê-ri mà thiết bị ảo đang sử dụng, đồng thời cảnh báo nếu có bất kỳ vấn đề nào xảy ra với các giá trị bạn đã cung cấp. Trong giao diện người dùng trình mô phỏng, bạn có thể xem số cổng của bảng điều khiển trong tiêu đề cửa sổ và xem số cổng adb bằng cách chọn Trợ giúp > Giới thiệu ,

Lưu ý rằng nếu giá trị port không đồng đều và nằm trong khoảng 5554 đến 5584, thì thiết bị ảo sẽ khởi động nhưng không hiển thị khi bạn sử dụng lệnh adb devices nếu máy chủ adb khởi động sau trình mô phỏng. Vì lý do này, bạn nên sử dụng số cổng của bảng điều khiển chẵn.

-ports
console-port,adb-port
Đặt các cổng TCP dùng cho bảng điều khiển và adb. Ví dụ:


emulator @Nexus_5X_API_23 -ports 5556,5559

Phạm vi cổng hợp lệ là 5554 đến 5682, cho phép 64 thiết bị ảo đồng thời. Tùy chọn -ports báo cáo những cổng và số sê-ri mà phiên bản trình mô phỏng đang sử dụng, đồng thời cảnh báo nếu có vấn đề với các giá trị bạn đã cung cấp.

Bạn nên sử dụng tùy chọn -port nếu có thể. Tùy chọn -ports có sẵn cho những cấu hình mạng yêu cầu các chế độ cài đặt đặc biệt.

Để biết thêm thông tin về cách đặt bảng điều khiển và cổng adb, hãy xem tùy chọn -port.

-tcpdump filepath Ghi lại gói mạng và lưu trữ chúng trong một tệp. Ví dụ:


emulator @Nexus_5X_API_23 -tcpdump /path/dumpfile.cap

Sử dụng tùy chọn này để bắt đầu chụp tất cả các gói mạng gửi qua mạng LAN ảo của trình mô phỏng. Sau đó, bạn có thể sử dụng một công cụ như Wireshark để phân tích lưu lượng truy cập.

Lưu ý rằng tùy chọn này bao gồm tất cả các gói Ethernet và không giới hạn ở các kết nối TCP.

Hệ thống
-accel mode Định cấu hình tính năng tăng tốc máy ảo trên trình mô phỏng. Ví dụ:


emulator @Nexus_5X_API_23 -accel auto

Mô phỏng nhanh chỉ hoạt động cho hình ảnh hệ thống x86 và x86_64. Trên Linux, máy chủ này dựa vào KVM. Trên máy chạy Windows và Mac, phụ thuộc vào CPU Intel và trình điều khiển Intel HAXM. Tùy chọn này bị bỏ qua nếu bạn không mô phỏng thiết bị x86 hoặc x86_64.

Các giá trị hợp lệ cho mode là:

  • auto – Xác định tự động nếu chế độ tăng tốc được hỗ trợ và sử dụng chế độ này khi có thể (mặc định).
  • off – Tắt chế độ tăng tốc hoàn toàn (điều này chủ yếu hữu ích khi gỡ lỗi).
  • on – Buộc tăng tốc. Nếu bạn không cài đặt hoặc sử dụng được KVM hoặc HAXM, thì trình mô phỏng sẽ không khởi động và in thông báo lỗi.

Để biết thêm thông tin, hãy xem phần Định cấu hình chế độ Tăng tốc phần cứng.

-accel-check Kiểm tra xem bạn đã cài đặt chế độ giám sát bắt buộc cho tính năng tăng tốc máy ảo của trình mô phỏng hay không (HAXM hoặc KVM). Ví dụ:


emulator -accel-check

Để biết thêm thông tin, hãy xem phần Xác định xem bạn đã cài đặt HAXM hay KVM chưa.

-engine engine

Chỉ định công cụ trình mô phỏng:

  • auto – Tự động chọn một công cụ (mặc định).
  • classic – Sử dụng công cụ QEMU 1 cũ.
  • qemu2 – Sử dụng công cụ QEMU 2 mới hơn.

Ví dụ:


emulator @Nexus_5X_API_23 -engine auto

Tính năng tự động phát hiện phải chọn giá trị mang lại hiệu suất cao nhất khi mô phỏng một AVD cụ thể. Bạn chỉ nên sử dụng tùy chọn -engine cho mục đích gỡ lỗi và so sánh.

-gpu mode Chọn chế độ mô phỏng GPU. Ví dụ:


emulator @Nexus_5X_API_23 -gpu swiftshader_indirect

Để biết thêm thông tin, hãy xem phần Định cấu hình tăng tốc đồ họa trên dòng lệnh.

-no-accel Tắt tính năng tăng tốc máy ảo trên trình mô phỏng khi sử dụng hình ảnh hệ thống x86 hoặc x86_64. Đoạn mã này chỉ hữu ích khi gỡ lỗi và giống như khi bạn chỉ định -accel off. Ví dụ:


emulator @Nexus_5X_API_23 -no-accel

Để biết thêm thông tin, hãy xem phần Định cấu hình chế độ Tăng tốc phần cứng.

-nojni
-no-jni
Tắt các tùy chọn kiểm tra Giao diện gốc Java (JNI) mở rộng trong thời gian chạy Android Dalvik hoặc ART. Ví dụ:


emulator @Nexus_5X_API_23 -nojni

Khi bạn khởi động một thiết bị ảo, tính năng kiểm tra JNI mở rộng sẽ được bật theo mặc định. Để biết thêm thông tin, hãy xem bài viết Mẹo về JNI.

-selinux {disabled|permissive} Đặt mô-đun bảo mật tăng cường bảo mật (SELinux) thành chế độ vô hiệu hóa hoặc cho phép trên hệ điều hành Linux. Ví dụ:


me-linux$ emulator @Nexus_5X_API_23 -selinux permissive

Theo mặc định, SELinux đang ở chế độ thực thi, nghĩa là chính sách bảo mật được thực thi. Chế độ permissive tải chính sách SELinux nhưng không thực thi chính sách này; mà chỉ ghi lại các lỗi vi phạm chính sách. Chế độ disabled sẽ tắt tính năng hỗ trợ kernel cho SELinux.

-timezone timezone

Đặt múi giờ cho thiết bị ảo thành timezone, thay vì múi giờ của máy chủ lưu trữ. Ví dụ:


emulator @Nexus_5X_API_23 -timezone Europe/Paris

Theo mặc định, trình mô phỏng sử dụng múi giờ của máy tính đang phát triển của bạn. Hãy sử dụng tùy chọn này để chỉ định một múi giờ khác hoặc nếu tính năng phát hiện tự động không hoạt động đúng cách. Giá trị timezone phải ở định dạng zoneinfo (tức là area/location hoặc area/subarea/location). Ví dụ:

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

Múi giờ được chỉ định phải nằm trong cơ sở dữ liệu Zoneinfo.

-version Hiển thị số phiên bản của trình mô phỏng. Ví dụ:


emulator @Nexus_5X_API_23 -version

Hoặc


emulator -version
Giao diện người dùng
-no-boot-anim Tắt hình động khởi động trong quá trình khởi động của trình mô phỏng để khởi động nhanh hơn. Ví dụ:


emulator @Nexus_5X_API_23 -no-boot-anim

Trên các máy tính chậm hơn, tùy chọn này có thể tăng tốc đáng kể trình tự khởi động.

-screen mode Đặt chế độ màn hình cảm ứng mô phỏng. Ví dụ:


emulator @Nexus_5X_API_23 -screen no-touch

mode có thể là bất kỳ giá trị nào sau đây:

  • touch – Mô phỏng màn hình cảm ứng (mặc định).
  • multi-touch – Mô phỏng một màn hình cảm ứng đa điểm.
  • no-touch – Tắt tính năng mô phỏng màn hình cảm ứng và cảm ứng đa điểm.

Tùy chọn nâng cao

Có các tùy chọn khởi động dòng lệnh sau, nhưng nhà phát triển ứng dụng trung bình không thường sử dụng các tùy chọn sau.

Trong phần mô tả, thư mục hoạt động là thư mục hiện tại trong thiết bị đầu cuối mà bạn đang nhập lệnh. Để biết thông tin về thư mục hệ thốngthư mục dữ liệu của AVD, cũng như các tệp được lưu trữ trong đó, hãy xem Tìm hiểu về các thư mục mặc định và tệp.

Một số tùy chọn trong số này phù hợp với các nhà phát triển ứng dụng bên ngoài, và một số tùy chọn này chủ yếu được các nhà phát triển nền tảng sử dụng. Nhà phát triển ứng dụng tạo các ứng dụng Android và chạy những ứng dụng này trên các AVD cụ thể. Nhà phát triển nền tảng làm việc trên hệ thống Android và chạy trình mô phỏng bên trong trình mô phỏng mà không có AVD được tạo sẵn. Họ là các thành viên nhóm nội bộ của Android, không phải là nhà phát triển ứng dụng bên ngoài.

Tùy chọn nâng cao Mô tả ngắn
-bootchart timeout

Bật biểu đồ khởi động, với thời gian chờ tính bằng giây. Một số hình ảnh hệ thống Android có hệ thống khởi tạo đã sửa đổi tích hợp cơ sở lập biểu đồ khởi động. Bạn có thể chuyển khoảng thời gian chờ biểu đồ khởi động cho hệ thống bằng tùy chọn này. Nếu hệ thống init của bạn chưa kích hoạt biểu đồ khởi động, thì tùy chọn này sẽ không hoạt động. Tùy chọn này chủ yếu hữu ích cho các nhà phát triển nền tảng chứ không phải cho các nhà phát triển ứng dụng bên ngoài.

Ví dụ:


emulator @Nexus_5X_API_23 -bootchart 120
-cache filepath

Chỉ định tệp hình ảnh phân vùng bộ nhớ đệm. Cung cấp tên tệp và đường dẫn tuyệt đối hoặc đường dẫn tương ứng với thư mục dữ liệu để thiết lập tệp bộ nhớ đệm ổn định. Nếu tệp không tồn tại, trình mô phỏng sẽ tạo tệp dưới dạng tệp trống. Nếu bạn không sử dụng tùy chọn này, thì chế độ mặc định sẽ là tệp tạm thời có tên cache.img. Để biết thêm thông tin, hãy xem bài viết về thư mục dữ liệu AVD.

Ví dụ:


emulator @Nexus_5X_API_23 -cache
   ~/.android/avd/Nexus_5X_API_23.avd/cache_persistent.img
-cache-size size

Đặt kích thước phân vùng bộ nhớ đệm tính bằng MB. Nếu bạn không chỉ định tùy chọn này, thì giá trị mặc định sẽ là 66 MB. Thông thường, hầu hết các nhà phát triển ứng dụng đều không cần tùy chọn này, trừ khi họ cần tải các tệp rất lớn có kích thước lớn hơn bộ nhớ đệm mặc định. Để biết thêm thông tin về tệp bộ nhớ đệm, hãy xem thư mục dữ liệu AVD.

Ví dụ:


emulator @Nexus_5X_API_23 -cache-size 1000
-data filepath

Đặt tệp hình ảnh phân vùng dữ liệu người dùng. Cung cấp tên tệp và đường dẫn tuyệt đối hoặc đường dẫn tương ứng với thư mục hoạt động để thiết lập tệp dữ liệu người dùng ổn định. Nếu tệp này không tồn tại, trình mô phỏng sẽ tạo một hình ảnh từ tệp userdata.img mặc định, lưu trữ hình ảnh đó trong tên tệp mà bạn đã chỉ định, đồng thời giữ nguyên dữ liệu người dùng cho tệp khi tệp tắt. Nếu bạn không sử dụng tùy chọn này, mặc định là tệp có tên userdata-qemu.img. Để biết thêm thông tin về tệp dữ liệu người dùng, hãy xem phần thư mục dữ liệu AVD.

Ví dụ:


emulator @Nexus_5X_API_23 -data
   ~/.android/avd/Nexus_5X_API_23.avd/userdata-test.img
-datadir dir

Chỉ định thư mục dữ liệu bằng đường dẫn tuyệt đối. Để biết thêm thông tin, hãy xem bài viết về thư mục dữ liệu AVD.

Ví dụ:


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

Sử dụng trình mô phỏng 32 bit trên các nền tảng 64 bit. Đôi khi, tùy chọn này cũng hữu ích khi kiểm tra hoặc gỡ lỗi. Ví dụ: có một vấn đề, trình mô phỏng đôi khi sẽ không chạy trên Windows 64 bit, nhưng 32 bit vẫn chạy; tùy chọn này hữu ích khi thực hiện các phép so sánh để khắc phục vấn đề. Sau đây là ví dụ:


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

Yêu cầu trợ giúp về hình ảnh ổ đĩa. Báo cáo này cung cấp thông tin liên quan đến cả nhà phát triển ứng dụng và nền tảng. Ví dụ:


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

Yêu cầu trợ giúp về thông số kỹ thuật của ký tự device. Một số tùy chọn trình mô phỏng bắt buộc phải có thông số device. Ví dụ:


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

Nhận trợ giúp về hình ảnh đĩa có liên quan đến nhà phát triển ứng dụng. Phần này giải thích vị trí của tệp hình ảnh cho một AVD được tạo bằng các công cụ SDK. Ví dụ:


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

Yêu cầu trợ giúp về hình ảnh đĩa có liên quan đến các nhà phát triển nền tảng. Ví dụ:


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

Chỉ định phiên bản ban đầu của phân vùng dữ liệu. Sau khi xóa dữ liệu người dùng, trình mô phỏng sẽ sao chép nội dung của tệp đã chỉ định vào dữ liệu người dùng (theo mặc định, tệp userdata-qemu.img) thay vì sử dụng tệp userdata.img mặc định như ban đầu phiên bản. Hãy chỉ định tên tệp, và một đường dẫn tuyệt đối hoặc đường dẫn tương ứng với thư mục đang hoạt động. Nếu bạn không chỉ định đường dẫn, đường dẫn sẽ đặt tệp trong thư mục hệ thống. Để biết thêm thông tin, hãy xem bài viết về thư mục hệ thống AVD.

Ví dụ:


emulator @Nexus_5X_API_23 -initdata
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/userdata-test.img
-kernel filepath

Sử dụng một nhân bản mô phỏng cụ thể. Nếu bạn không chỉ định đường dẫn, trình mô phỏng sẽ tìm trong thư mục hệ thống. Nếu bạn không chỉ định tùy chọn này, giá trị mặc định sẽ là kernel-ranchu. Để biết thêm thông tin, hãy xem phần Thư mục hệ thống AVD. Sử dụng tùy chọn ‑show‑kernel để xem các thông báo gỡ lỗi cho nhân.

Ví dụ:


emulator @Nexus_5X_API_23 -kernel
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/kernel-test.img -show-kernel
-noaudio
-no-audio

Tắt hỗ trợ âm thanh cho thiết bị ảo này. Một số máy tính Linux và Windows có trình điều khiển âm thanh bị lỗi gây ra nhiều triệu chứng, chẳng hạn như việc trì hoãn trình mô phỏng khởi động. Trong trường hợp này, bạn có thể sử dụng tùy chọn này để khắc phục vấn đề. Ngoài ra, bạn có thể sử dụng biến môi trường QEMU_AUDIO_DRV để thay đổi phần phụ trợ âm thanh.

Ví dụ:


emulator @Nexus_5X_API_23 -noaudio
-nocache
-no-cache

Khởi động trình mô phỏng mà không cần phân vùng bộ nhớ đệm. Nếu bạn không sử dụng tùy chọn này, mặc định là tệp tạm thời có tên là cache.img. Tùy chọn này chỉ dành cho các nhà phát triển nền tảng. Để biết thêm thông tin, hãy xem bài viết về thư mục dữ liệu AVD.

Ví dụ:


emulator @Nexus_5X_API_23 -nocache
-no-snapshot

Ngăn cả tải tự động và lưu hoạt động, khiến trình mô phỏng thực thi trình tự khởi động đầy đủ và mất trạng thái khởi động khi đóng. Thao tác này sẽ ghi đè tùy chọn -snapshot.

Ví dụ:


emulator @Nexus_5X_API_23 -no-snapshot
-no-snapshot-load

Ngăn trình mô phỏng tải trạng thái AVD khỏi bộ nhớ chụp nhanh. Thực hiện khởi động đầy đủ.

Ví dụ:


emulator @Nexus_5X_API_23 -no-snapshot-load
-no-snapshot-save

Ngăn trình mô phỏng lưu trạng thái AVD vào ảnh chụp nhanh khi thoát, tức là mọi thay đổi sẽ bị mất.

Ví dụ:


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

Đừng cố gắng sửa thời gian theo đồng hồ AVD ngay khi khôi phục ảnh chụp nhanh. Tùy chọn này có thể hữu ích cho bạn trong quá trình thử nghiệm vì tùy chọn này giúp tránh đột ngột chuyển đổi. Tuy nhiên, cứ sau 15 giây, thông tin cập nhật về thời gian vẫn được gửi đến AVD.

Ví dụ:


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

Khởi động trình mô phỏng mà không cần kết nối một tệp với mục đích lưu trữ hoặc tải ảnh chụp nhanh trạng thái, buộc khởi động đầy đủ và tắt chức năng chụp nhanh trạng thái. Tùy chọn này sẽ ghi đè tùy chọn -snapstorage-snapshot.

Ví dụ:


emulator @Nexus_5X_API_23 -no-snapstorage
-no-window

Tắt chế độ hiển thị cửa sổ đồ họa trên trình mô phỏng. Tùy chọn này hữu ích khi chạy trình mô phỏng trên các máy chủ không có màn hình. Bạn vẫn có thể truy cập trình mô phỏng thông qua adb hoặc bảng điều khiển. Ví dụ:


emulator @Nexus_5X_API_23 -no-window
-partition-size size

Chỉ định kích thước phân vùng dữ liệu hệ thống tính bằng MB. Ví dụ:


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

Đặt một thuộc tính hệ thống Android trong trình mô phỏng khi khởi động. namephải là một tên thuộc tính có gắn nhãn làqemu_prop (ví dụ: hãy xemtệp Property_contexts ) tối đa 32 ký tự và không có dấu cách nào trong đóvalue phải là một chuỗi gồm tối đa 92 ký tự. Bạn có thể chỉ định nhiều tùy chọn ‑prop trên một dòng lệnh. Tùy chọn này có thể hữu ích khi gỡ lỗi. Ví dụ:


emulator @Nexus_5X_API_23 -prop qemu.name=value -prop qemu.abc=xyz
-qemu args Chuyển đối số đến phần mềm trình mô phỏng QEMU. Lưu ý rằng QEMU 1 và QEMU 2 có thể sử dụng các đối số khác nhau. Khi sử dụng tùy chọn này, hãy đảm bảo đó là tùy chọn cuối cùng được chỉ định, vì tất cả các tùy chọn sau khi đều được diễn giải là các tùy chọn dành riêng cho QEMU. Tùy chọn này khá nâng cao và chỉ nên được sử dụng bởi các nhà phát triển rất quen thuộc với QEMU mô phỏng Android.
-qemu -h

Hiển thị trợ giúp về -qemu. Ví dụ:


emulator -qemu -h
-ramdisk filepath

Hãy chỉ định hình ảnh khởi động ổ đĩa ngẫu nhiên. Hãy chỉ định tên tệp và một đường dẫn tuyệt đối hoặc một đường dẫn tương ứng với thư mục đang hoạt động. Nếu bạn không sử dụng tùy chọn này, mặc định là tệp ramdisk.img trong thư mục hệ thống. Để biết thêm thông tin, hãy xem bài viết về thư mục hệ thống AVD.

Ví dụ:


emulator @Nexus_5X_API_23 -ramdisk
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/ramdisk-test.img
-report-console socket

Báo cáo cổng bảng điều khiển cho một bên thứ ba từ xa trước khi bắt đầu mô phỏng. Tiêu đề này có thể hữu ích cho tập lệnh thử nghiệm tự động. socket phải sử dụng một trong các định dạng sau:

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

Để biết thêm thông tin, hãy sử dụng tùy chọn -help-report-console như mô tả trong bài viết Nhận trợ giúp chi tiết cho một tùy chọn cụ thể.

-shell

Tạo bảng điều khiển shell trên thiết bị đầu cuối hiện tại. Lệnh này khác với lệnh adb shell theo những cách sau:

  • Công cụ này tạo một trình duyệt gốc để cho phép bạn sửa đổi nhiều phần của hệ thống.
  • Công cụ này hoạt động ngay cả khi daemon adb trong hệ thống mô phỏng bị hỏng.
  • Việc nhấn tổ hợp phím Ctrl+C (⌘C) sẽ dừng trình mô phỏng, thay vì màn hình shell.

Ví dụ:


emulator @Nexus_5X_API_23 -shell
-snapshot name

Chỉ định tên của ảnh chụp nhanh trong một tệp lưu trữ ảnh chụp nhanh để tự động bắt đầu và lưu các thao tác. Thay vì thực thi một trình tự khởi động đầy đủ, trình mô phỏng có thể tiếp tục thực thi từ ảnh chụp nhanh trạng thái trước đó. Việc này thường nhanh hơn đáng kể. Khi bạn cung cấp tùy chọn này, trình mô phỏng sẽ tải ảnh chụp nhanh của tên đó từ ảnh chụp nhanh và lưu lại dưới cùng một tên khi thoát. Nếu bạn không dùng tùy chọn này, giá trị mặc định là trình tự khởi động đầy đủ. Nếu ảnh chụp nhanh được chỉ định không tồn tại, thì trình mô phỏng sẽ thực hiện một trình tự khởi động đầy đủ và thực hiện một thao tác lưu.

Xem tùy chọn -snapstorage để biết thông tin về cách chỉ định tệp lưu trữ ảnh chụp nhanh và tệp mặc định.


emulator @Nexus_5X_API_23 -snapshot snapshot2

Điều quan trọng cần nhớ là trong quá trình tải ảnh chụp nhanh, Trừ khi bạn lưu thông tin này trong một ảnh chụp nhanh khác, mọi thay đổi kể từ thời điểm đó sẽ bị mất.

Bạn cũng có thể tạo ảnh chụp nhanh từ Bảng điều khiển trình mô phỏng bằng cách sử dụng lệnh avd snapshot save name. Để biết thêm thông tin, hãy xem phần Gửi lệnh điều khiển trình mô phỏng tới thiết bị ảo.

-snapshot-list

Hiện danh sách các ảnh chụp nhanh hiện có. Nó sẽ in một bảng tổng quan về ảnh chụp nhanh được lưu trữ trong tệp lưu trữ ảnh chụp nhanh mà trình mô phỏng đã bắt đầu, sau đó thoát. Nếu bạn cũng chỉ định -snapstorage file, lệnh này sẽ in một bảng chứa các ảnh chụp nhanh được lưu trữ trong tệp.

Ví dụ:


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

Bạn có thể sử dụng giá trị cột ID và TAG trong dữ liệu đầu ra làm đối số cho tùy chọn -snapshot.

-snapstorage filepath

Chỉ định một tệp lưu trữ chứa tất cả ảnh chụp nhanh trạng thái. Tất cả các ảnh chụp nhanh được thực hiện trong quá trình thực thi sẽ được lưu trong tệp này và chỉ có thể khôi phục ảnh chụp nhanh trong tệp này trong quá trình chạy trình mô phỏng. Nếu bạn không chỉ định tùy chọn này, giá trị mặc định sẽ là snapshots.img trong thư mục dữ liệu. Nếu tệp xác định không tồn tại, trình mô phỏng sẽ khởi động, nhưng không hỗ trợ lưu hoặc tải ảnh chụp nhanh trạng thái.

Ví dụ:


emulator @Nexus_5X_API_23 -snapstorage
   ~/.android/avd/Nexus_5X_API_23.avd/snapshots-test.img
-sysdir dir

Chỉ định thư mục hệ thống bằng đường dẫn tuyệt đối. Để biết thêm thông tin, hãy xem bài viết về thư mục hệ thống AVD. Ví dụ:


emulator @Nexus_5X_API_23 -sysdir
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/test
-system filepath

Chỉ định một tệp hệ thống ban đầu. Cung cấp tên tệp và một đường dẫn tuyệt đối hoặc một đường dẫn tương ứng với thư mục đang hoạt động. Nếu bạn không sử dụng tùy chọn này, mặc định là tệp system.img trong thư mục hệ thống. Để biết thêm thông tin, hãy xem bài viết về thư mục hệ thống AVD. Ví dụ:


emulator @Nexus_5X_API_23 -system
   ~/Library/Android/sdk/system-images/android-23/
   google_apis/x86/system-test.img
-use-system-libs

Trên Linux, hãy sử dụng hệ thống libstdc++ thay vì phiên bản đi kèm với hệ thống trình mô phỏng. Chỉ sử dụng tùy chọn này nếu trình mô phỏng không khởi động bình thường, mặc dù trình mô phỏng này không phải lúc nào cũng hoạt động. Ngoài ra, hãy đặt biến môi trường ANDROID_EMULATOR_USE_SYSTEM_LIBS thành 1.

Ví dụ:


me-linux$ emulator @Nexus_5X_API_23 -use-system-libs
-writable-system

Sử dụng tùy chọn này để có hình ảnh hệ thống có thể ghi trong phiên mô phỏng. Cách làm như sau:

  1. Khởi động thiết bị ảo với tùy chọn -writable-system.
  2. Nhập lệnh adb remount từ một thiết bị đầu cuối của lệnh để yêu cầu trình mô phỏng lắp lại system/ ở chế độ đọc/ghi (theo mặc định được đặt là chỉ đọc).

Lưu ý rằng việc sử dụng cờ này sẽ tạo một bản sao tạm thời của hình ảnh hệ thống có thể có kích thước rất lớn (vài trăm MB) nhưng sẽ bị hủy khi trình mô phỏng thoát.

Các tùy chọn không dùng nữa

Các tùy chọn dòng lệnh sau không còn được dùng nữa:

  • -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

Nhận trợ giúp về tùy chọn dòng lệnh

Phần này mô tả cách yêu cầu trợ giúp về các tùy chọn dòng lệnh. Phần sau đây cung cấp thông tin chi tiết hơn về các tùy chọn dòng lệnh của trình mô phỏng thường được sử dụng có sẵn khi bạn khởi động trình mô phỏng.

Liệt kê tất cả các tùy chọn trình mô phỏng

Để in danh sách tất cả các tùy chọn trình mô phỏng, bao gồm cả một đoạn mô tả ngắn, hãy nhập lệnh này:

emulator -help

Đang nhận trợ giúp chi tiết cho một tùy chọn cụ thể

Để in trợ giúp cho một tùy chọn khởi động cụ thể, hãy nhập lệnh sau:

emulator -help-option

Ví dụ:

emulator -help-netspeed

Trợ giúp này chi tiết hơn thông tin mô tả mà tùy chọn -help cung cấp.

Nhận trợ giúp chi tiết cho tất cả tùy chọn

Để yêu cầu trợ giúp chi tiết đối với tất cả các tùy chọn trình mô phỏng, hãy nhập lệnh sau:

emulator -help-all

Biến môi trường trình mô phỏng trang thông tin

Để nhận danh sách các biến môi trường của trình mô phỏng, hãy nhập lệnh sau:

emulator -help-environment

Bạn có thể đặt các biến môi trường trong cửa sổ dòng lệnh trước khi khởi chạy thiết bị ảo hoặc bạn có thể đặt thông qua tùy chọn cài đặt người dùng trong hệ điều hành; ví dụ: trong tệp .bashrc của bạn trên Linux.

Liệt kê các thẻ gỡ lỗi

Để in danh sách thẻ cho các tùy chọn của -debug, hãy nhập lệnh sau:

emulator -help-debug-tags

Các tùy chọn -debug cho phép bạn bật hoặc tắt thông báo gỡ lỗi từ các thành phần trình mô phỏng cụ thể, theo chỉ định của các thẻ.