Loslegen

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

KVM-Verfügbarkeit prüfen

Sepia ist ein virtuelles Gerät und hängt davon ab, dass Virtualisierung auf dem Hostcomputer verfügbar ist.

Achten Sie darauf, dass in einem Terminal auf Ihrem Hostcomputer 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 ARM64-Maschine ist es am direktesten, nach /dev/kvm zu suchen:

find /dev -name kvm

Sepien werfen

  1. Laden Sie in einem Terminalfenster die Debian-Pakete auf dem Host 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
    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
    

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

  2. Cuttlefish ist Teil der Android Open-Source Platform (AOSP). Builds des virtuellen Geräts finden Sie auf der Website für Android Continuous Integration. Einen Index aller Android-Builds finden Sie auf der Android-Website für Continuous Integration unter http://ci.android.com/.

  3. Geben Sie einen Zweignamen ein. Verwenden Sie den Standardzweig aosp-main oder einen GSI-Zweig wie aosp-android13-gsi.

  4. Rufen Sie das Build-Ziel aosp_cf_x86_64_phone auf und klicken Sie auf userdebug, um den neuesten Build aufzurufen.

  5. Klicken Sie auf das grüne Feld unter userdebug, um diesen Build auszuwählen. Es wird das Feld Details mit weiteren Informationen zu diesem Build angezeigt. Klicken Sie in diesem Bereich auf Artifacts (Artefakte), um eine Liste aller Artefakte aufzurufen, die an diesen Build angehängt sind.

  6. Laden Sie im Bereich „Artefakte“ die Artefakte für Sepien herunter.

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

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

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

    1. x86_64-Architektur:

      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. ARM64-Architektur:

      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. Sepien starten:

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

Prüfen, ob der Tintenfisch über ADB sichtbar ist

Ähnlich wie ein physisches Gerät ist Sepia durch die Android Debug Bridge (ADB) sichtbar.

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

./bin/adb devices

Virtuelles Gerät im Web ansehen und damit interagieren

Standardmäßig startet Cuttlefish mit --start_webrtc, wodurch ein WebView über Port 8443 auf dem Hostcomputer aktiviert wird.

Rufen Sie in Ihrem Webbrowser https://localhost:8443 auf, um Ihre virtuellen Geräte anzusehen und mit ihnen zu interagieren.

Weitere Informationen finden Sie unter Cuttlefish: WebRTC Streaming.

Tintenfisch stoppen

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

HOME=$PWD ./bin/stop_cvd