Sử dụng thiết bị ảo Trình mô phỏng Android

Bạn có thể sử dụng Trình mô phỏng Android để tạo bản mô phỏng các thiết bị Android chạy ảnh hệ thống Android tuỳ chỉnh của riêng mình. Ngoài ra, bạn có thể thêm tính năng hỗ trợ nhiều màn hình vào quy trình mô phỏng Trình mô phỏng Android.

Cấu trúc Trình mô phỏng Android

Trình mô phỏng Android cho phép bạn chạy Trình mô phỏng Android và chạy hệ điều hành Android trong một máy ảo được gọi là Android Virtual Device (AVD). Mỗi AVD chứa toàn bộ ngăn xếp phần mềm Android và chạy như thể mình đang ở trên một thiết bị thực tế. Hình 1 minh hoạ cấu trúc cấp cao của Trình mô phỏng Android. Để biết thêm thông tin về trình mô phỏng, hãy xem phần Chạy ứng dụng trên Trình mô phỏng Android.

Cấu trúc Trình mô phỏng Android.

Hình 1. Cấu trúc Trình mô phỏng Android.

Tạo hình ảnh AVD

Mỗi AVD bao gồm một hình ảnh hệ thống Android, chạy trong AVD đó. Trình quản lý thiết bị ảo Android có một số hình ảnh hệ thống. Bạn có thể tạo hình ảnh hệ thống AVD tuỳ chỉnh từ mã nguồn rồi tạo các quy trình mô phỏng thiết bị để chạy các hình ảnh đó.

Cách tạo và chạy hình ảnh hệ thống AVD:

  1. Tải xuống nguồn Android:

    mkdir aosp-main; cd aosp-main
    repo init -u
    repo sync -j24
    

Nếu muốn xây dựng các phiên bản Android khác, bạn có thể tìm tên nhánh của các phiên bản đó trong kho lưu trữ Android công khai. Các mục này ánh xạ đến Tên mã Android, Thẻ và Số bản dựng.

  1. Xây dựng hình ảnh hệ thống AVD. Quá trình này tương tự như tạo hình ảnh hệ thống thiết bị Android. Ví dụ: để tạo AVD x86 64 bit:

    source ./build/envsetup.sh
    lunch sdk_phone_x86_64
    make -j32
    
  2. Chạy hình ảnh hệ thống AVD trong Trình mô phỏng Android:

    emulator
    

Xem Tuỳ chọn khởi động dòng lệnh để biết thêm thông tin chi tiết về cách chạy trình mô phỏng. Hình 2 là ví dụ về Trình mô phỏng Android chạy AVD:

Trình mô phỏng Android chạy AVD.

Hình 2. Trình mô phỏng Android chạy AVD.

Chia sẻ hình ảnh hệ thống AVD để người khác sử dụng với Android Studio

Làm theo hướng dẫn sau để chia sẻ hình ảnh hệ thống AVD của bạn với người khác. Họ có thể sử dụng hình ảnh hệ thống AVD với Android Studio để phát triển và kiểm thử ứng dụng.

  1. Tạo thêm các gói sdksdk_repo:

    Đối với Android 13 trở lên, hãy sử dụng lệnh emu_img_zip:

    $ make emu_img_zip
    

    Thao tác này sẽ tạo ra một tệp sdk-repo-linux-system-images-eng.[username]].zip.

    Đối với Android 12 trở xuống, hãy sử dụng lệnh sdk_repo:

    $ make -j32 sdk sdk_repo
    

    Lệnh make sdk sdk_repo tạo hai tệp trong aosp-main/out/host/linux-x86/sdk/sdk_phone_x86:

    • sdk-repo-linux-system-images-eng.[username].zip
    • repo-sys-img.xml
  2. Lưu trữ tệp sdk-repo-linux-system-images-eng.[username].zip ở nơi người dùng có thể truy cập được và lấy URL của tệp đó để sử dụng làm URL hình ảnh hệ thống AVD.

  3. Đối với Android 12 trở xuống, hãy chỉnh sửa repo-sys-img.xml cho phù hợp:

    • Cập nhật <sdk:url> thành URL hình ảnh hệ thống AVD.
    • Xem sdk-sys-img-03.xsd để tìm hiểu về các nội dung cập nhật khác đối với tệp.
    • Lưu trữ repo-sys-img.xml ở nơi mà người dùng của bạn có thể truy cập và lấy URL của nó để sử dụng làm URL trang web cập nhật tuỳ chỉnh.

Để sử dụng hình ảnh AVD tuỳ chỉnh, hãy làm như sau trong Trình quản lý SDK:

  1. Thêm URL trang web cập nhật tuỳ chỉnh làm Trang web cập nhật SDK.

    Thao tác này sẽ thêm hình ảnh hệ thống AVD tuỳ chỉnh của bạn vào trang Hình ảnh hệ thống.

  2. Tạo AVD bằng cách tải xuống và chọn hình ảnh hệ thống AVD tuỳ chỉnh.

Thêm tính năng hỗ trợ nhiều màn hình

Android 10 nâng cao tính năng nhiều màn hình để hỗ trợ tốt hơn cho nhiều trường hợp sử dụng hơn, chẳng hạn như chế độ tự động và chế độ máy tính. Trình mô phỏng Android cũng hỗ trợ chế độ mô phỏng nhiều màn hình. Vì vậy, bạn có thể tạo một môi trường nhiều màn hình cụ thể mà không cần thiết lập phần cứng thực.

Bạn có thể thêm tính năng hỗ trợ nhiều màn hình vào AVD bằng cách thực hiện các thay đổi sau hoặc bằng cách lựa chọn quả anh đào trong các CL này.

  • Thêm trình cung cấp nhiều màn hình vào bản dựng bằng cách thêm các dòng sau vào tệp build/target/product/sdk_phone_x86.mk:

    PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \
        system/lib/libemulator_multidisplay_jni.so \
        system/lib64/libemulator_multidisplay_jni.so \
        system/priv-app/MultiDisplayProvider/MultiDisplayProvider.apk \
    PRODUCT_PACKAGES += MultiDisplayProvider
    
  • Bật cờ tính năng Nhiều màn hình bằng cách thêm dòng này vào tệp device/generic/goldfish/data/etc/advancedFeatures.ini:

    MultiDisplay = on
    

Bạn có thể tìm thấy các tính năng mới nhất của trình mô phỏng và thông tin phát hành từ các nguồn sau: