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.shMit 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-userdebugMit 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)lunchso 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.
mDie 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.
So startest du Cuttlefish mit deinem Build:
cvd createCuttlefish 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 successfullyFühren Sie
adbaus, um eine Verbindung zu Cuttlefish herzustellen.Führen Sie
adb devicesaus, 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 deviceFühren Sie
cvd stopaus, 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-commoncvd nicht gefunden
Wenn der Fehler cvd not found ausgegeben wird:
- Richten Sie den Build noch einmal ein.
- Fahren Sie mit Ziel auswählen fort.
Cuttlefish-Absturzschleifen
Wenn Cuttlefish in eine Absturzschleife gerät:
- Führen Sie
cvd stopaus, um alle Cuttlefish-Instanzen zu beenden. - Build mit Cuttlefish noch einmal testen