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
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
.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/.
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
.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.
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.
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.
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ềmaosp_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.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.
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:
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 .zipKiế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
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