Erste Schritte

Auf dieser Seite wird beschrieben, wie Sie einen AOSP-Build mit Cuttlefish starten.

Überprüfen Sie die KVM-Verfügbarkeit

Cuttlefish ist ein virtuelles Gerät und hängt von der Verfügbarkeit der Virtualisierung auf dem Hostcomputer ab.

Stellen Sie in einem Terminal auf Ihrem Host-Computer sicher, dass die Virtualisierung mit einer Kernel-basierten virtuellen Maschine (KVM) verfügbar ist:

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

Dieser Befehl sollte einen Wert ungleich Null zurückgeben.

Bei der Ausführung auf einer ARM-Maschine besteht die direkteste Möglichkeit darin, nach /dev/kvm zu suchen:

find /dev -name kvm

Starten Sie Tintenfisch

  1. Laden Sie in einem Terminalfenster die Host-Debian-Pakete herunter, erstellen und installieren Sie sie:

    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
    for dir in base frontend; do
      pushd $dir
      # Install build dependencies
      sudo mk-build-deps -i
      dpkg-buildpackage -uc -us
      popd
    done
    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
    

    Der Neustart löst die Installation zusätzlicher Kernelmodule aus und wendet udev Regeln an.

  2. Cuttlefish ist Teil der Android Open-Source-Plattform (AOSP). Builds des virtuellen Geräts finden Sie auf der Android Continuous Integration-Website. Um einen Index aller Android-Builds zu finden, navigieren Sie zur Android Continuous Integration-Website unter http://ci.android.com/ .

  3. Geben Sie einen Filialnamen ein. Verwenden Sie den standardmäßigen aosp-main Zweig oder einen generischen System-Image-Zweig (GSI) wie aosp-android13-gsi .

  4. Navigieren Sie zum Build-Ziel „aosp_cf_x86_64_phone “ und klicken Sie auf „userdebug“ , um den neuesten Build anzuzeigen.

  5. Klicken Sie auf das grüne Feld unter „userdebug“ , um diesen Build auszuwählen. Ein Detailfenster mit weiteren Informationen zu diesem Build wird angezeigt. Klicken Sie in diesem Bereich auf Artefakte , um eine Liste aller mit diesem Build verknüpften Artefakte anzuzeigen.

  6. Laden Sie im Bedienfeld „Artefakte“ die Artefakte für Tintenfisch herunter.

    1. Klicken Sie auf das Artefakt aosp_cf_x86_64_phone-img-xxxxxx.zip , das die Gerätebilder enthält. Im Dateinamen ist „xxxxxx“ die Build-ID für dieses Gerät.

    2. Scrollen Sie im Panel nach unten und laden Sie cvd-host_package.tar.gz herunter. Laden Sie das Hostpaket immer von demselben Build herunter wie Ihre Images.

  7. Erstellen Sie auf Ihrem lokalen System einen Containerordner und extrahieren Sie die Pakete:

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

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

Stellen Sie sicher, dass Cuttlefish über adb sichtbar ist

Ähnlich wie ein physisches Gerät ist Cuttlefish über die Android Debug Bridge (adb) sichtbar.

Führen Sie im selben Ordner, in dem Sie Cuttlefish gestartet haben, den folgenden Befehl aus, um eine Liste aller über adb auf Ihrem Hostcomputer verfügbaren Android-Geräte anzuzeigen:

./bin/adb devices

Sehen Sie sich das virtuelle Gerät im Web an und interagieren Sie mit ihm

Standardmäßig wird Cuttlefish mit --start_webrtc gestartet, was eine Webansicht über Port 8443 auf dem Hostcomputer ermöglicht.

Um Ihre virtuellen Geräte anzuzeigen und mit ihnen zu interagieren, navigieren Sie in Ihrem Webbrowser zu https://localhost:8443 .

Weitere Informationen finden Sie unter Cuttlefish: WebRTC-Streaming .

Stoppen Sie Tintenfische

Stoppen Sie das virtuelle Gerät im selben Verzeichnis, in dem Sie das Gerät gestartet haben:

HOME=$PWD ./bin/stop_cvd