Để sử dụng Thiết bị ảo Android (AVD), Trình mô phỏng Android hỗ trợ Giao diện người dùng đồ họa (GUI) và Giao diện dòng lệnh (CLI). Bạn chọn quy trình làm việc tối ưu cho môi trường của mình.
- Tạo và quản lý GUI thiết bị ảo là một công cụ đơn giản được cung cấp cho hầu hết người dùng và nhà phát triển ứng dụng.
- Khởi động trình mô phỏng từ dòng lệnh cung cấp một cách linh hoạt cho người dùng thành thạo và tự động hóa. Ví dụ: để sử dụng nhiều AVD hoặc để thiết lập thử nghiệm liên tục và tích hợp liên tục. Để bắt đầu, hãy xem các ví dụ trong công cụ ).
Khởi chạy AOSP Car AVD bằng cách sử dụng bản dựng sẵn
Để nhanh chóng khởi chạy và thử nghiệm bằng AOSP Car AVD dựng sẵn, hãy sử dụng tập lệnh nguồn mở để tải xuống và khởi chạy bản dựng trình mô phỏng từ ci.android.com
. Kịch bản đã được thử nghiệm trên macOS và Linux.
Bạn sẽ cần Curl để sử dụng tập lệnh này.
Để chạy tập lệnh:
- Sao chép nội dung tập lệnh
launch_emu.sh
vào tệp cục bộ của bạn, giả sử bạn sử dụnglaunch_emu.sh
làm tên tệp cục bộ. - Làm cho tập lệnh cục bộ của bạn có thể thực thi được. Ví dụ: chạy
chmod +x ./launch_emu.sh
. - Kiểm tra các tùy chọn có sẵn bằng cách chạy tập lệnh với
./launch_emu.sh -h
. - Trên
ci.android.com
, đi tới nhánhaosp-main-throttled
và chọn bản dựng gần đây trong đósdk_car_x86_64
có màu xanh lục. Ví dụ: 11370359. Nếu bạn không thấy thông tin về bản dựng, hãy đăng xuất khỏi Tài khoản Google của mình và thử lại. - Tải xuống và cài đặt các tệp nhị phân liên quan đến trình mô phỏng có ID bản dựng. Ví dụ:
./launch_emu.sh -i -a 11370359
. - Sau đó, bạn có thể sử dụng
./launch_emu.sh
để khởi chạy trình mô phỏng đã tải xuống và cài đặt (không sử dụng tùy chọn-i
hoặc-a
). - Để tải xuống và cài đặt ID bản dựng khác, hãy chạy
./launch_emu.sh -c
để dọn dẹp không gian làm việc của bạn, sau đó lặp lại Bước 4 và Bước 5 ở trên.
Để chỉ định các tùy chọn tùy chọn khởi động dòng lệnh của trình mô phỏng Android khi khởi chạy trình mô phỏng, hãy sử dụng tùy chọn -v
. Ví dụ:
./launch_emu.sh -v “-cores 4 -memory 6144 -no-snapshot"
Xây dựng AVD xe AOSP
Quá trình xây dựng AOSP Car AVD tương tự như Xây dựng hình ảnh AVD cho điện thoại (ví dụ: aosp_car_x86_64):
- Để thiết lập môi trường phát triển và xác định một nhánh, hãy xem Công cụ kiểm soát nguồn . Sau đó xem lại Tải xuống nguồn :
ANDROID_BRANCH="android12L-release"
REPO_URL="https://android.googlesource.com/platform/manifest"
mkdir $ANDROID_BRANCH && cd $ANDROID_BRANCH && repo init -u $REPO_URL -b $ANDROID_BRANCH --partial-clone && repo sync -c -j8 - Xây dựng hình ảnh AVD:
. build/envsetup.sh && lunch sdk_car_x86_64-userdebug && m -j32
- Chạy hình ảnh AVD (thêm các tùy chọn khởi động dòng lệnh bổ sung nếu cần):
emulator &
Ví dụ:
Hình 1. Màn hình Trình mô phỏng ảo Android
Lưu ý về quá trình này:
- Bởi vì quá trình xây dựng cũng giống như quy trình cần thiết để xây dựng Android cho một thiết bị vật lý, nên hãy dành chút thời gian để tải xuống nguồn rồi xây dựng nó.
- Để làm việc trên các nhánh khác, hãy đặt
$ANDROID_BRANCH
thành nhánh/thẻ khác. - Hình ảnh AVD, chẳng hạn như
system.img
, được xây dựng tại$ANDROID_PRODUCT_OUT
. Để tìm hiểu thêm về các hình ảnh chính, hãy xem thư mục hệ thống AVD . - Xem tệp README để tìm hiểu cách sử dụng các tệp nhị phân của trình mô phỏng dựng sẵn trong cây Android để chạy trình mô phỏng.
Tạo AVD ô tô
Thêm AVD ô tô mới gần giống với Thêm thiết bị mới . Ví dụ: 1660554 tạo AVD avd_car
mới.
Để tạo AVD ô tô:
- Tạo một công ty và một thư mục thiết bị nếu cần. Ví dụ này sử dụng
$ANDROID_BUILD_TOP/device/google_car/avd_car
. - Tạo tệp tạo sản phẩm,
avd_car.mk
, xác định cách xây dựng AVD. - Tạo một thư mục thiết bị,
avd_car_device
, trong đó chứaBoardConfig.mk
vàsource.properties
. - Thêm
makefile
mới và lựa chọnlunch
mới vàoAndroidProducts.mk
. - Để xây dựng và chạy
avd_car
AVD mới:. build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
Đóng gói tệp zip hình ảnh AVD
Bạn có thể đóng gói và chia sẻ AVD của mình với người khác hoặc sử dụng nó trên máy tính khác. Sử dụng emu_img_zip.mk
để tạo tệp zip hình ảnh AVD:
- Sau khi bạn xây dựng AVD, hãy đặt
emu_img_zip
làm mục tiêu:m emu_img_zip
- Tệp zip hình ảnh AVD, có tiền tố
sdk-repo-linux-system-images
, được tạo trong thư mục có tên$ANDROID_PRODUCT_OUT
.
Xây dựng hạt nhân AVD
Nhân AVD tương tự như các nhân Android khác ở chỗ tất cả đều là hình ảnh dựng sẵn. Thông thường, bạn có thể sử dụng các hình ảnh dựng sẵn của hạt nhân cá vàng tiêu chuẩn như trong mỗi bản phát hành Android.
Để thử nghiệm các thay đổi kernel:
- Chạy chuỗi hướng dẫn sau:
mkdir goldfish-kernel-54 cd goldfish-kernel-54 repo init -u https://android.googlesource.com/kernel/manifest -b common-android11-5.4 repo sync BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh BUILD_CONFIG=common-modules/virtual-device/build.config.goldfish.x86_64 build/build.sh ls -l ./out/android11-5.4/dist/
- Thay thế nhị phân hạt nhân trong cơ sở mã theo tệp tạo AVD. Ví dụ:
x86_64-vendor.mk
bao gồmx86_64-kernel.mk
.
Mã kernel và cấu hình được đặt như sau:
Mục | Giá trị |
---|---|
Chi nhánh | common-android11-5.4 (được sử dụng trong Android 11) |
Rõ ràng | kernel/manifest/common-android11-5.4 |
mô-đun chung/thiết bị ảo | kernel/common-modules/virtual-device/android11-5.4 |
hạt nhân | kernel/common/android11-5.4 |
Tạo hồ sơ thiết bị mới
Để cho phép người dùng tạo AVD cụ thể trong Trình quản lý AVD của Android Studio, hãy xem Tạo và quản lý thiết bị ảo . Các nhà sản xuất thiết bị có thể xác định thông số kỹ thuật phần cứng của riêng họ, chẳng hạn như kích thước màn hình và PPI, thông qua việc sử dụng tệp devices.xml
có trong hình ảnh AVD.
- Ví dụ: xem cấu hình Thiết bị ô tô trong
automotive.xml
. - Để phát triển hoặc tạo mẫu HMI, nhiều thiết bị có thể được thêm vào tệp cho cùng một hình ảnh AVD.
- Bao gồm tệp trong tệp zip hình ảnh OEM AVD trong thư mục
[ABI]
. Ví dụ: nhưx86_64
. - Các nhà sản xuất thiết bị cũng có thể Tạo giao diện giả lập . Ví dụ: để xác định các nút phần cứng bổ sung nhằm mang lại trải nghiệm người dùng có độ trung thực cao hơn. Điều này không chỉ hữu ích cho quy trình làm việc của nhà phát triển mà còn hữu ích cho các nhiệm vụ khác như nghiên cứu và đánh giá UX.
Tạo tệp XML hình ảnh AVD
Các nhà sản xuất thiết bị có thể tạo tệp XML hình ảnh AVD cho Android Studio để tải xuống.
- Ví dụ: xem tệp XML hình ảnh AAOS AVD,
sys-img2-1.xml
. - Các nhà sản xuất thiết bị có thể xác định thỏa thuận cấp phép OEM AVD của riêng họ cho người dùng mục tiêu của họ (sử dụng hệ thống danh dự), với giấy phép dành cho Trình mô phỏng Android. Android Studio nhận được sự đồng thuận của người dùng khi có giấy phép như vậy.
Để tạo hình ảnh:
- Chuẩn bị tệp zip hình ảnh AVD.
- Giải nén
${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip
. - Thêm
devices.xml
vào thư mụcx86_64
rồi nén tệp dưới dạng tệp zip. Ví dụ: nhưoem_avd_img_x86_64.zip
. - Cập nhật
oem-sys-img2-1.xml
. - Cập nhật tên, kích thước và shasum của tệp zip (các tệp XML mẫu được cung cấp trong
tools
).
Ví dụ: để lưu trữ AVD trên Google Cloud Storage , hãy xem Tạo nhóm lưu trữ .
Để tải lên và đặt AVD ở chế độ có thể truy cập công khai, hãy xem Công khai dữ liệu :
BUCKET_NAME="aaos-avd" gsutil mb gs://$BUCKET_NAME gsutil cp oem_avd_img_x86_64.zip gs://$BUCKET_NAME gsutil cp oem-sys-img2-1.xml gs://$BUCKET_NAME gsutil iam ch allUsers:objectViewer gs://$BUCKET_NAME
Định dạng URL bổ trợ SDK hình ảnh AVD có dạng: https://storage.googleapis.com/$BUCKET_NAME/oem-sys-img2-1.xml
. Ví dụ: nếu BUCKET_NAME là aaos-avd thì URL sẽ là: https://storage.googleapis.com/aaos-avd/oem-sys-img2-1.xml
.
Chia sẻ hình ảnh AVD với người dùng Android Studio
Để người dùng của bạn có thể tải xuống hình ảnh AVD và sử dụng AVD của bạn bằng Android Studio, bạn có thể cung cấp tệp XML bổ trợ SDK. Để biết chi tiết, hãy xem Cập nhật Công cụ IDE và SDK .
Để tải xuống AVD từ mạng:
- Lưu trữ tệp zip hình ảnh và tệp XML trên máy chủ.
- Cung cấp URL cho người dùng mục tiêu của bạn.
- ( Tùy chọn ) Giới hạn quyền truy cập theo tên người dùng và mật khẩu.
Ngoài ra, để tăng tốc độ phát triển, hãy tải AVD xuống thư mục cục bộ:
- Lưu các tệp XML và tất cả các tạo phẩm được chỉ định trong tệp XML vào một thư mục (ví dụ: tất cả các tệp zip hình ảnh AVD) có tên
ADDON_DIR
. - Chỉ định URL là
file://$ADDON_DIR/oem-sys-img2-1.xml
.