Herunterladen, erstellen und ausführen

Auf dieser Seite wird beschrieben, wie Sie AAOS SDV auf Cuttlefish herunterladen, erstellen und ausführen.

AAOS-SDV-Quellcode abrufen

Folgen Sie der Anleitung unter Android-Quellcode herunterladen.

Build-Umgebung einrichten

Führen Sie in Ihrem Arbeitsverzeichnis das Skript envsetup.sh aus, um Ihre Build-Umgebung einzurichten:

source build/envsetup.sh

Mit diesem Skript werden mehrere Befehle importiert, mit denen du mit dem Android-Quellcode arbeiten kannst, einschließlich der auf dieser Seite verwendeten Befehle. Die Quelle des Skripts finden Sie unter platform/build/envsetup.sh. Wenn Sie die integrierte Hilfe aufrufen möchten, geben Sie hmm ein.

Ziel auswählen

Bevor Sie SDV erstellen, müssen Sie ein Ziel festlegen. Verwenden Sie den Befehl lunch gefolgt von einem String, der das Ziel darstellt, für das Sie den Build erstellen, um das Ziel zu identifizieren. Verwenden Sie beispielsweise diesen Befehl, um ein Ziel für den Cuttlefish-Emulator zu erstellen:

lunch sdv_core_cf-aosp_current-userdebug

Mit diesem Befehl werden das Produkt, die Releasekonfiguration und die Variante ausgewählt, die erstellt werden sollen. Die Auswahl wird in der Umgebung gespeichert.

lunch-Ziele für SDV werden in einem separaten Git-Projekt im Verzeichnis device/google/sdv bereitgestellt. Eine detaillierte Beschreibung der verfügbaren Ziele finden Sie unter device/google/sdv/README.md. Die wichtigsten Cuttlefish-Ziele (cf) sind:

  • sdv_core_cf-aosp_current-userdebug: Erstellen Sie ein Image von AAOS SDV Core (sdv_core), das auf Cuttlefish (cf) ausgeführt wird.
  • sdv_media_cf-aosp_current-userdebug: Image von AAOS SDV Core mit virtIO-virtualisierten Media APIs (sdv_media) erstellen.
  • sdv_media_har_cf-aosp_current-userdebug: Erstellen Sie ein Image, das das AAOS-SDV-Medienziel (sdv_media_cf) lunch so erweitert, dass es den Hochverfügbarkeits-Renderer (HAR) enthält. HAR wird beim Booten automatisch ausgeführt.
  • sdv_ivi_cf-aosp_current-userdebug: Erstellen Sie ein Image des IVI-Systems (In-Vehicle Infotainment) mit dem SDV-Gateway und den Java-Beispiel-Apps.
  • sdv_ivi_cf_ds-aosp_current-userdebug: Erstellen Sie ein Image, das das AAOS-SDV-IVI-Ziel (sdv_ivi_cf) erweitert und die DriverUI- und Kombiinstrument-Implementierung von Display Safety enthält.

AAOS-SDV erstellen

Führen Sie den folgenden Befehl aus, um das Ziel zu erstellen. Je nach Spezifikation Ihrer Workstation dauert der erste Build zwischen 30 und 60 Minuten. Nachfolgende Builds nehmen deutlich weniger Zeit in Anspruch.

m

Die Ausgabe des Builds wird in $OUT_DIR angezeigt. Wenn Sie verschiedene Ziele erstellen, wird jeder Ziel-Build in $OUT_DIR angezeigt.

Build mit Cuttlefish testen

Nachdem du AAOS SDV erstellt hast, teste deinen Build mit Cuttlefish.

  1. So startest du Cuttlefish mit deinem Build:

    cvd create

    Cuttlefish wird mit dem von Ihnen erstellten Ziel (sdv_core_cf-aosp_current-userdebug) ausgeführt. Nach dem Start von Cuttlefish wird die folgende Meldung angezeigt:

    VIRTUAL_DEVICE_BOOT_COMPLETED
    Virtual device booted successfully
  2. Führen Sie adb aus, um eine Verbindung zu Cuttlefish herzustellen.

  3. Führen Sie adb devices aus, um zu prüfen, ob der Build ausgeführt wird. Es wird ein Ergebnis ähnlich dem folgenden angezeigt:

    List of devices attached
    0.0.0.0:6520 device
  4. Führen Sie cvd stop aus, um das Gerät herunterzufahren.

Informationen zum Ausführen mehrerer Cuttlefish-Instanzen mit unterschiedlichen Builds finden Sie unter Cuttlefish: Multi-Tenancy.

Fehlerbehebung

In diesem Abschnitt wird beschrieben, wie Sie Fehler beheben, die beim Herunterladen, Erstellen oder Ausführen von AAOS SDV auftreten können.

RBE-Fehler

Wenn Fehler bei der Remote Build Execution (RBE) auftreten, entfernen Sie die Definitionen von USE_RBE und ENABLE_RBE_BOOTSTRAP aus .bashrc oder .zshrc.

cvd: VM-Manager crosvm wird auf diesem Computer nicht unterstützt

Wenn Cuttlefish meldet, dass der VM-Manager crosvm auf Ihrem Computer nicht unterstützt wird, führen Sie den folgenden Befehl aus, um Cuttlefish zu installieren:

sudo apt install cuttlefish-common

cvd nicht gefunden

Wenn der Fehler cvd not found ausgegeben wird:

  1. Richten Sie den Build noch einmal ein.
  2. Fahren Sie mit Ziel auswählen fort.

Cuttlefish-Absturzschleifen

Wenn Cuttlefish in eine Absturzschleife gerät:

  1. Führen Sie cvd stop aus, um alle Cuttlefish-Instanzen zu beenden.
  2. Build mit Cuttlefish noch einmal testen