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

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

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

Trình mô phỏng Android chạy hệ điều hành Android trong một máy ảo có tên là Thiết bị Android ảo (AVD). Mỗi AVD đều chứa toàn bộ ngăn xếp phần mềm Android và chạy như thể đang ở trên một thiết bị thực. Hình 1 minh hoạ kiến 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 bài viết Chạy ứng dụng trên Trình mô phỏng Android.

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

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

Tạo hình ảnh AVD

Mỗi AVD đều có 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 các hình ảnh hệ thống AVD tuỳ chỉnh từ mã nguồn và tạo các hoạt động mô phỏng thiết bị để chạy các hình ảnh đó.

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

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

    mkdir aosp-android-latest-release; cd aosp-android-latest-release
    repo init -u
    repo sync -j24

Nếu muốn tạo 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. Chúng liên kết với Tên mã, thẻ và số bản dựng của Android.

  1. Tạo một hình ảnh hệ thống AVD. Đây là quy trình tương tự như tạo một hình ảnh hệ thống thiết bịAndroid. Ví dụ: để tạo một 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

Hãy xem phần Các lựa 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 minh hoạ ví dụ về Trình mô phỏng Android đang chạy một AVD:

Trình mô phỏng Android đang chạy một AVD.

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

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

Làm theo các hướng dẫn sau để chia sẻ ảnh hệ thống AVD với người khác. Họ có thể sử dụng hình ảnh hệ thống AVD của bạn bằng 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 dùng lệnh sdk_repo:

    $ make -j32 sdk sdk_repo
    

    Lệnh make sdk sdk_repo tạo ra 2 tệp trong aosp-android-latest-release/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 ở một nơi mà người dùng có thể truy cập và lấy URL của tệp đó để 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.
    • Hãy xem sdk-sys-img-03.xsd để tìm hiểu về các nội dung cập nhật khác cho tệp này.
    • Lưu trữ repo-sys-img.xml ở nơi người dùng có thể truy cập và lấy URL của tệp này để dùng làm URL trang web cập nhật tuỳ chỉnh.

Để sử dụng một 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 cải thiện 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, chẳng hạn như chế độ ô tô và chế độ máy tính. Android Emulator cũng hỗ trợ tính năng 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 chọn lọc từ các CL này.

  • Thêm 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: