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
Rufen Sie im Arbeitsverzeichnis das Skript envsetup.sh auf, um die Build-Umgebung einzurichten:
source build/envsetup.shDieses Skript importiert mehrere Befehle, mit denen Sie mit dem Android-Quellcode arbeiten können, einschließlich der Befehle, die auf dieser Seite verwendet werden. Den Quellcode des Skripts finden Sie unter platform/build/envsetup.sh. Geben Sie hmm ein, um die integrierte Hilfe aufzurufen.
Ziel auswählen
Bevor Sie SDV erstellen, müssen Sie ein Ziel für den Build festlegen. Verwenden Sie den Befehl lunch gefolgt von einem String, der das Ziel darstellt, für das Sie den Build erstellen. Mit diesem Befehl erstellen Sie beispielsweise ein Ziel für den Cuttlefish-Emulator:
lunch sdv_core_cf-aosp_current-userdebugMit diesem Befehl werden das Produkt, die Releasekonfiguration und die Variante für den Build ausgewählt und die Auswahl in der Umgebung gespeichert.
lunch -Ziele für SDV sind in einem separaten Git-Projekt im Verzeichnis devices/google/sdv verfügbar. 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- Erstellt ein Image von AAOS SDV Core (sdv_core), das auf Cuttlefish (cf) ausgeführt wird.sdv_media_cf-aosp_current-userdebug- Erstellt ein Image von AAOS SDV Core mit virtIO-virtualisierten Media APIs (sdv_media).sdv_media_har_cf-aosp_current-userdebug- Erstellt ein Image, das das AAOS SDV Media (sdv_media_cf)lunchZiel erweitert, um den Renderer mit hoher Verfügbarkeit (High-Availability Renderer, HAR) zu enthalten. HAR wird beim Booten automatisch ausgeführt.sdv_ivi_cf-aosp_current-userdebug- Erstellt ein Image von In-Vehicle Infotainment (IVI) mit dem SDV-Gateway und Java-Beispiel-Apps.sdv_ivi_cf_ds-aosp_current-userdebug- Erstellt ein Image, das das AAOS SDV IVI-Ziel (sdv_ivi_cf) erweitert und die DriverUI und Instrument Cluster-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 dauern deutlich weniger Zeit.
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 Sie AAOS SDV erstellt haben, testen Sie den Build mit Cuttlefish.
So starten Sie Cuttlefish mit Ihrem Build:
cvd createCuttlefish wird mit dem erstellten Ziel (
sdv_core_cf-aosp_current-userdebug) ausgeführt. Nachdem Cuttlefish gestartet wurde, wird diese 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. Ein Ergebnis ähnlich dem folgenden wird 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 Instanzen von Cuttlefish mit verschiedenen 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 isn't supported on this machine
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 not found
Wenn der Fehler cvd not found angezeigt 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. - Testen Sie den Build noch einmal mit Cuttlefish.