Bắt đầu

Trang này mô tả cách chạy bản dựng AOSP bằng Cuttlefish.

Xác minh khả năng sử dụng KVM

Cuttlefish là một thiết bị ảo và phụ thuộc vào việc có tính năng ảo hoá trên máy chủ hay không.

Trong một thiết bị đầu cuối trên máy chủ lưu trữ, hãy đảm bảo rằng bạn có thể sử dụng tính năng ảo hoá bằng Máy ảo dựa trên nhân (KVM):

grep -c -w "vmx\|svm" /proc/cpuinfo

Lệnh này sẽ trả về một giá trị khác 0.

Khi chạy trên máy ARM64, cách trực tiếp nhất là kiểm tra /dev/kvm:

find /dev -name kvm

Chạy Cuttlefish

  1. Trong cửa sổ dòng lệnh, hãy tải xuống, tạo và cài đặt các gói Debian của máy chủ lưu trữ:

    sudo apt install -y git devscripts equivs config-package-dev debhelper-compat golang curl
    git clone https://github.com/google/android-cuttlefish
    cd android-cuttlefish
    tools/buildutils/build_packages.sh
    sudo dpkg -i ./cuttlefish-base_*_*64.deb || sudo apt-get install -f
    sudo dpkg -i ./cuttlefish-user_*_*64.deb || sudo apt-get install -f
    sudo usermod -aG kvm,cvdnetwork,render $USER
    sudo reboot

    Thao tác khởi động lại sẽ kích hoạt việc cài đặt các mô-đun nhân bổ sung và áp dụng các quy tắc udev.

  2. Cuttlefish là một phần của Nền tảng nguồn mở Android (AOSP). Bạn có thể tìm thấy các bản dựng của thiết bị ảo tại trang web Tích hợp liên tục của Android. Để tìm chỉ mục của tất cả các bản dựng Android, hãy chuyển đến trang web Tích hợp liên tục của Android tại http://ci.android.com/.

  3. Nhập tên nhánh. Sử dụng nhánh aosp-android-latest-release mặc định hoặc sử dụng nhánh hình ảnh hệ thống chung (GSI) như aosp-android13-gsi.

  4. Chuyển đến mục tiêu bản dựng aosp_cf_x86_64_only_phone và nhấp vào userdebug để xem bản dựng mới nhất.

  5. Nhấp vào hộp màu xanh lục bên dưới userdebug để chọn bản dựng này. Một bảng điều khiển Details (Chi tiết) sẽ xuất hiện cùng với thông tin chi tiết hơn về bản dựng này. Trong bảng điều khiển này, hãy nhấp vào Cấu phần phần mềm để xem danh sách tất cả cấu phần phần mềm đính kèm vào bản dựng này.

  6. Trong bảng điều khiển Cấu phần phần mềm, hãy tải cấu phần phần mềm xuống cho Cuttlefish.

    1. Nhấp vào cấu phần phần mềm aosp_cf_x86_64_phone-img-xxxxxx.zip cho x86_64 hoặc cấu phần phần mềm aosp_cf_arm64_only_phone-xxxxxx.zip cho ARM64. Các cấu phần phần mềm này chứa hình ảnh thiết bị. Trong tên tệp, "xxxxxx" là mã bản dựng cho thiết bị này.

    2. Di chuyển xuống trong bảng điều khiển rồi tải cvd-host_package.tar.gz xuống. Luôn tải gói máy chủ xuống từ cùng một bản dựng với hình ảnh của bạn.

  7. Trên hệ thống cục bộ, hãy tạo một thư mục vùng chứa và giải nén các gói:

    1. Cấu trúc x86_64:

      mkdir cf
      cd cf
      tar -xvf /path/to/cvd-host_package.tar.gz
      unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip

    2. Kiến trúc ARM64:

      mkdir cf
      cd cf
      tar -xvf /path/to/cvd-host_package.tar.gz
      unzip /path/to/aosp_cf_arm64_only_phone-img-xxxxxx.zip

  8. Chạy Cuttlefish:

    HOME=$PWD ./bin/launch_cvd --daemon

Xác minh rằng bạn có thể thấy Cuttlefish thông qua adb

Tương tự như thiết bị thực, bạn có thể thấy Cuttlefish thông qua Cầu gỡ lỗi Android (adb).

Trong cùng thư mục mà bạn đã chạy Cuttlefish, hãy chạy lệnh sau để xem danh sách tất cả thiết bị Android có sẵn thông qua adb trên máy chủ:

./bin/adb devices

Xem và tương tác với thiết bị ảo trên web

Theo mặc định, Cuttlefish khởi chạy bằng --start_webrtc, cho phép chế độ xem web thông qua cổng 8443 trên máy chủ lưu trữ.

Để xem và tương tác với các thiết bị ảo, hãy chuyển đến https://localhost:8443 trong trình duyệt web.

Để biết thêm thông tin, hãy xem bài viết Cuttlefish: Truyền trực tuyến WebRTC.

Dừng Cuttlefish

Dừng thiết bị ảo trong cùng thư mục mà bạn đã dùng để khởi chạy thiết bị:

HOME=$PWD ./bin/stop_cvd