Na tej stronie dowiesz się, jak uruchomić kompilację AOSP za pomocą Cuttlefish.
Sprawdzanie dostępności KVM
Cuttlefish to urządzenie wirtualne, które zależy od dostępności wirtualizacji na maszynie hosta.
W terminalu na maszynie hosta sprawdź, czy dostępna jest wirtualizacja za pomocą maszyny wirtualnej opartej na jądrze (KVM):
grep -c -w "vmx\|svm" /proc/cpuinfoTa komenda powinna zwrócić wartość różną od zera.
W przypadku uruchamiania na maszynie ARM64 najprostszym sposobem jest sprawdzenie, czy istnieje /dev/kvm:
find /dev -name kvmUruchamianie Cuttlefish
W oknie terminala pobierz, skompiluj i zainstaluj pakiety Debiana hosta:
sudo apt install -y git devscripts equivs config-package-dev debhelper-compat golang curlgit clone https://github.com/google/android-cuttlefishcd android-cuttlefishtools/buildutils/build_packages.shsudo dpkg -i ./cuttlefish-base_*_*64.deb || sudo apt-get install -fsudo dpkg -i ./cuttlefish-user_*_*64.deb || sudo apt-get install -fsudo usermod -aG kvm,cvdnetwork,render $USERsudo rebootPonowne uruchomienie powoduje zainstalowanie dodatkowych modułów jądra i zastosowanie reguł
udev.Cuttlefish jest częścią platformy Android Open-Source Platform (AOSP). Kompilacje urządzenia wirtualnego znajdziesz na stronie ciągłej integracji Androida. Aby znaleźć indeks wszystkich kompilacji Androida, otwórz stronę ciągłej integracji Androida pod adresem http://ci.android.com/.
Wpisz nazwę gałęzi. Użyj domyślnej gałęzi
aosp-android-latest-releaselub użyj gałęzi podstawowego obrazu systemu (GSI) takiej jakaosp-android13-gsi.Otwórz cel kompilacji aosp_cf_x86_64_only_phone i kliknij userdebug w przypadku najnowszej kompilacji.
Aby wybrać tę kompilację, kliknij zielone pole pod userdebug. Pojawi się panel Szczegóły z dodatkowymi informacjami o tej kompilacji. W tym panelu kliknij Artefakty, aby wyświetlić listę wszystkich artefaktów dołączonych do tej kompilacji.
W panelu Artefakty pobierz artefakty dla Cuttlefish.
Kliknij artefakt
aosp_cf_x86_64_phone-img-xxxxxx.zipw przypadku x86_64 lub artefaktaosp_cf_arm64_only_phone-xxxxxx.zipw przypadku ARM64, który zawiera obrazy urządzenia. W nazwie pliku „xxxxxx” to identyfikator kompilacji tego urządzenia.Przewiń panel w dół i pobierz
cvd-host_package.tar.gz. Zawsze pobieraj pakiet hosta z tej samej kompilacji co obrazy.
W systemie lokalnym utwórz folder kontenera i rozpakuj pakiety:
Architektura x86_64:
mkdir cfcd cftar -xvf /path/to/cvd-host_package.tar.gzunzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zipArchitektura ARM64:
mkdir cfcd cftar -xvf /path/to/cvd-host_package.tar.gzunzip /path/to/aosp_cf_arm64_only_phone-img-xxxxxx.zip
Uruchom Cuttlefish:
HOME=$PWD ./bin/launch_cvd --daemon
Sprawdzanie, czy Cuttlefish jest widoczny przez adb
Podobnie jak urządzenie fizyczne, Cuttlefish jest widoczny przez Android Debug Bridge (adb).
W tym samym folderze, w którym uruchomiono Cuttlefish, uruchom to polecenie, aby wyświetlić listę wszystkich urządzeń z Androidem dostępnych przez adb na maszynie hosta:
./bin/adb devicesWyświetlanie urządzenia wirtualnego w internecie i wchodzenie z nim w interakcje
Domyślnie Cuttlefish uruchamia się z flagą --start_webrtc, która włącza widok internetowy przez port 8443 na maszynie hosta.
Aby wyświetlić urządzenia wirtualne i wchodzić z nimi w interakcje, otwórz w przeglądarce adres https://localhost:8443.
Więcej informacji znajdziesz w artykule Cuttlefish: przesyłanie strumieniowe WebRTC.
Zatrzymywanie Cuttlefish
Zatrzymaj urządzenie wirtualne w tym samym katalogu, w którym zostało uruchomione:
HOME=$PWD ./bin/stop_cvd