Rozpocznij

Na tej stronie dowiesz się, jak uruchomić kompilację AOSP za pomocą Mątwa.

Sprawdź dostępność KVM

Mątwy to urządzenie wirtualne, które zależy od wirtualizacji na hoście.

W terminalu na hoście sprawdź, czy wirtualizacja z Dostępna jest maszyna wirtualna oparta na jądrze (KVM):

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

To polecenie powinno zwrócić wartość inną niż zero.

W przypadku maszyny ARM64 najprostszym sposobem jest sprawdzenie /dev/kvm:

find /dev -name kvm

Wystrzel mątwy

  1. W oknie terminala pobierz, skompiluj i zainstaluj hostujące pakiety Debiana:

    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
    

    Ponowne uruchomienie aktywuje instalację dodatkowych modułów jądra i stosuje zasadę udev. reguł.

  2. Cuttlefish jest częścią platformy Android open-source (AOSP). Kompilacje urządzenia wirtualne znajdują się na stronie ciągłej integracji Androida. Do znaleźć indeks wszystkich kompilacji Androida, przejść do ciągłego Witryna integracji: http://ci.android.com/

  3. Wpisz nazwę gałęzi. Użyj domyślnej gałęzi aosp-main lub Gałąź ogólnego obrazu systemu (GSI) na przykład aosp-android13-gsi.

  4. Przejdź do celu kompilacji aosp_cf_x86_64_phone i kliknij userdebug.

  5. Aby wybrać tę kompilację, kliknij zielone pole poniżej userdebug. Szczegóły który zawiera bardziej szczegółowe informacje tę kompilację. W panelu kliknij Artefakty, aby wyświetlić listę wszystkich artefaktów podłączonych do tej kompilacji.

  6. Z panelu Artefakty pobierz artefakty mątwy.

    1. Kliknij artefakt aosp_cf_x86_64_phone-img-xxxxxx.zip dla x86_64 lub artefaktu aosp_cf_arm64_only_phone-xxxxxx.zip dla procesora ARM64, zawiera obrazy urządzeń. w nazwie pliku „xxxxxx”, to konstrukcja Identyfikator tego urządzenia.

    2. Przewiń panel w dół i pobierz cvd-host_package.tar.gz. Zawsze pobierz pakiet hosta z tej samej kompilacji co obrazy.

  7. W systemie lokalnym utwórz folder kontenera i wyodrębnij pakiety:

    1. Architektura 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. Architektura 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. Uruchom Cuttlefish:

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

Sprawdź, czy mątwa jest widoczna w narzędziu adb

Podobnie jak urządzenie fizyczne mątwy jest widoczne Android Debug Bridge (adb)

W tym samym folderze, w którym uruchomiono Cuttlefish, uruchom następujące polecenie: aby zobaczyć listę wszystkich urządzeń z Androidem dostępnych w narzędziu adb host:

./bin/adb devices

Wyświetlanie urządzenia wirtualnego w przeglądarce i korzystanie z niego

Domyślnie mątwy uruchamia się z funkcją --start_webrtc, która włącza komponent WebView przez port 8443 na hoście.

Aby wyświetlić urządzenia wirtualne i wchodzić z nimi w interakcje, otwórz https://localhost:8443 w przeglądarce.

Więcej informacji: Cuttlefish: strumieniowanie WebRTC.

Zatrzymaj mątwę

Zatrzymaj urządzenie wirtualne w katalogu użytym do uruchomienia urządzenie:

HOME=$PWD ./bin/stop_cvd