Android Automotive OS – Übersicht

Android Automotive OS-Benutzeroberfläche
Abbildung 1: Android Automotive OS

Android Automotive OS ist eine für die Verwendung im Auto optimierte Version von Android, die auf der Android-Kernplattform basiert. In Autos mit Google-Integration läuft Android Automotive OS. Sie sind mit Google-Apps und ‑Diensten wie Google Play, Gemini, Google Assistant und Google Maps ausgestattet.

Android Automotive OS-Hardware

Weitere Informationen zu den Mindesthardwarespezifikationen für Android Automotive OS-Geräte finden Sie im Abschnitt Automotive Requirements (Anforderungen für Automotive) des Android Compatibility Definition Document (CDD) für die Android-Version(en), die Ihre App unterstützt.

Display-Aussparungen

Wie bei anderen Android-Formfaktoren werden Display-Aussparungen von Android Automotive OS-Geräten mit nicht rechteckigen Displays unterstützt. Die Größe und Form von Aussparungen in Autos können sich jedoch erheblich von denen anderer Formfaktoren unterscheiden. Eine detaillierte Anleitung finden Sie unter Mit Fenstereinrückungen und Display-Aussparungen arbeiten.

Audio

Android Automotive OS-Geräte haben in der Regel eine feste Lautstärke. Weitere Informationen dazu, wie sich dies auf Ihre App auswirken kann, finden Sie unter Mit Geräten mit fester Lautstärke arbeiten.

Android Automotive OS-Software

Android Automotive OS basiert zwar auf demselben Betriebssystem wie andere Formfaktoren, es gibt jedoch einige zusätzliche Funktionen, die sich auf die Entwicklung und Verwendung von Apps auswirken können.

System-UI

Es gibt einige Unterschiede in der Funktionsweise dieser System-UI-Elemente in Autos, die Sie kennen sollten.

Im Gegensatz zu anderen Formfaktoren müssen Android Automotive OS-Geräte keine Hardware- oder Software-Zurück-Funktion haben. Wenn Aktivitäten nicht im Kompatibilitätsmodus ausgeführt werden, sollten sie UI Elemente enthalten, um die In-App-Navigation zu ermöglichen und die AN-1 Qualitäts richtlinie zu erfüllen.

Layout der Systemleiste

Wie bei anderen Formfaktoren enthält Android Automotive OS Systemleisten wie Statusleisten und Navigationsleisten. In Autos können diese Leisten anders dimensioniert und positioniert sein als bei anderen Formfaktoren. Navigationsleisten können beispielsweise links, rechts oder unten auf dem Bildschirm positioniert sein. Auch wenn oben eine Statusleiste und unten eine Navigationsleiste vorhanden ist (wie bei den meisten Smartphones und Tablets), ist die Größe dieser Elemente in Autos wahrscheinlich viel größer.

Außerdem befinden sich Display-Aussparungen auf Mobilgeräten in der Regel innerhalb der Systemleisten, was in Autos nicht der Fall ist.

Eine detaillierte Anleitung finden Sie unter Mit Fenstereinrückungen und Display-Aussparungen arbeiten.

Immersiver Modus

Mit Android Automotive OS können OEMs festlegen, ob Apps die Systemleisten ein- oder ausblenden können, um in den immersiven Modus zu wechseln oder ihn zu verlassen. Wenn OEMs verhindern, dass Apps die Systemleisten ausblenden, können sie sicherstellen, dass Fahrzeugsteuerungen wie die Klimaanlage immer auf dem Bildschirm zugänglich sind.

Einschränkungen der Nutzerfreundlichkeit

Einschränkungen der Nutzerfreundlichkeit sind eine in Android Automotive OS integrierte Funktion, mit der die Ablenkung des Fahrers berücksichtigt wird. Sie verhindern automatisch die Verwendung von Apps, die nicht für die Verwendung während der Fahrt optimiert wurden.

Die Aktivität, die die Blockierung verursacht, wird über einer App angezeigt, die nicht als für Ablenkung optimiert gekennzeichnet ist.
Abbildung 2: Eine App, die durch Einschränkungen der Nutzerfreundlichkeit blockiert wird

Die genauen Regeln, die festlegen, wie und wann Einschränkungen der Nutzerfreundlichkeit aktiv sind, werden von den Fahrzeugherstellern festgelegt. Diese Regeln können je nach geografischer Region variieren. So können beispielsweise für dasselbe Fahrzeug, das in Europa verkauft wird, andere Regeln gelten als für Fahrzeuge, die in den USA verkauft werden.

Die Regeln für Einschränkungen der Nutzerfreundlichkeit können auch je nach Display innerhalb eines Fahrzeugs variieren. So kann beispielsweise ein Display in der Mitte des Sichtfelds des Fahrers eingeschränkt sein, während das Fahrzeug in Bewegung ist, während ein Beifahrerdisplay uneingeschränkt bleibt.

Wenn Ihre App an Einschränkungen der Nutzerfreundlichkeit angepasst werden muss, verweisen Sie direkt darauf und versuchen Sie nicht, die Implementierung zu rekonstruieren. Wenn Sie beispielsweise davon ausgehen, dass Einschränkungen der Nutzerfreundlichkeit aktiv sind, wenn der Gang nicht auf „Parken“ steht, schränken Sie möglicherweise unnötigerweise eine App ein, die auf einem Beifahrerdisplay ausgeführt wird.

Ablenkungsoptimierung

Standardmäßig können Aktivitäten nicht ausgeführt werden, wenn Einschränkungen der Nutzerfreundlichkeit aktiv sind, um die Ablenkung des Fahrers zu begrenzen. Wenn Sie dem System mitteilen möchten, dass eine Aktivität weiter ausgeführt werden soll, während das Fahrzeug in Bewegung ist, kann das folgende <meta-data> Element innerhalb des entsprechenden <activity> Elements hinzugefügt werden.

<activity ...>
  <meta-data android:name="distractionOptimized" android:value="true">
</activity>

Bei der Entwicklung von Apps für Android Automotive OS sollte diese Metadaten nur dann in Ihrem Manifest vorhanden sein, wenn Sie das Manifest Element für die CarAppActivity einer App deklarieren, die mit der Car App Library erstellt wurde.<activity> Keine anderen Aktivitäten sollten als ablenkungsoptimiert gekennzeichnet werden. Andernfalls wird Ihre App bei der Einreichung im Google Play Store abgelehnt.

Bedienungshilfen

Die Unterstützung für Bedienungshilfen für Android Automotive OS ist nicht so umfassend wie bei anderen Formfaktoren. TalkBack, Schalterzugriff und Voice Access sind auf Android Automotive OS-Geräten nicht verfügbar.

Untertitel-Einstellungen werden auf Android Automotive OS-Geräten unterstützt. Weitere Informationen zur Integration finden Sie unter Systemeinstellungen für Untertitel übernehmen.

Netzwerkauswahl

Android Automotive OS unterstützt die Netzwerkauswahl pro Anwendung (Per-application network selection, PANS). Damit können OEMs den Mobilfunknetz-Traffic anwendungsbezogen an verschiedene Netzwerke weiterleiten.

Die meisten Apps verwenden nur das ihnen zugewiesene Standardnetzwerk und profitieren nur von dieser Funktion. So kann der OEM beispielsweise für den Netzwerkverkehr Ihrer App bezahlen, auch wenn der Nutzer keinen eigenen Datentarif hat. Wenn Ihre App (oder eine ihrer Abhängigkeiten) andere Netzwerke als das Standardnetzwerk verwendet, profitiert sie möglicherweise nicht von den vom OEM festgelegten Einstellungen. Weitere Informationen zur Verwendung anderer Netzwerke als des Standardnetzwerks finden Sie unter Netzwerkstatus lesen.

Systemfunktionen

Mit PackageManager::hasSystemFeature können Sie feststellen, ob eine bestimmte Funktion verfügbar ist, und das Verhalten Ihrer App entsprechend anpassen.

Hardware-Funktionen

Wie bei anderen nicht mobilen Formfaktoren können sich die in Autos verfügbaren Hardware-Funktionen von denen auf Mobilgeräten unterscheiden.

Bildschirmausrichtung

Wie Fernseher haben auch Autos eine feste Ausrichtung. Im Gegensatz zu Fernsehern sind sie sowohl im Hoch- als auch im Querformat verfügbar. Damit Apps, die für Android Automotive OS entwickelt wurden, auf allen Fahrzeugen verfügbar sind, dürfen sie keine expliziten oder impliziten Anforderungen an die Funktionen android.hardware.screen.landscape oder android.hardware.screen.portrait haben.

Standort des Netzwerks

Viele Android Automotive OS-Geräte implementieren nicht den Telefonie-Stack, der verwendet wird zur Bereitstellung des Standorts des Netzwerks, und melden daher nicht die android.hardware.location.network Systemfunktion. Obwohl der Standort des Netzwerks möglicherweise nicht verfügbar ist, wird der Zugriff auf den ungefähren Standort weiterhin unterstützt. Weitere Informationen finden Sie unter Ungefährer Standort unter Android Automotive OS.

Software-Funktionen

Einige Software-Funktionen, die häufig bei anderen Formfaktoren zu finden sind, werden auf Android Automotive OS-Geräten möglicherweise nicht unterstützt. So sind beispielsweise die folgenden Funktionen auf vielen Android Automotive OS-Fahrzeugen nicht verfügbar:

Funktionsanforderungen von Google Play erfüllen

Damit Apps, die für Android Automotive OS entwickelt wurden, über Google Play an Autos verteilt werden können, müssen sie in der AndroidManifest.xml Datei ein <uses-feature> Element für die android.hardware.type.automotive Funktion enthalten:

<manifest ...>
  ...
  <!--
    See Choose a track for Android Automotive OS
    for details on how to choose which value to use for the android:required attribute.
  -->
  <uses-feature
      android:name="android.hardware.type.automotive"
      android:required="[true|false]">
  ...
</manifest>

Wenn Ihre App außerdem eine explizite Funktionsdeklaration mit android:required="true" oder eine implizite Funktionsanforderung für eine der folgenden Funktionen hat, müssen Sie diese aktualisieren oder entfernen, damit die Funktionsanforderungen Ihrer App die Verteilung auf ansonsten kompatible Fahrzeuge nicht verhindern:

Für Funktionen, die explizit mit android:required="true" deklariert wurden, haben Sie folgende Möglichkeiten:

  • Löschen Sie das <uses-feature>-Element, wenn die Funktion nicht anderweitig implizit erforderlich ist.
  • Deklarieren Sie die Funktion explizit mit android:required="false".

Für implizit erforderliche Funktionen haben Sie folgende Möglichkeiten:

  • Deklarieren Sie die Funktion explizit mit android:required="false".
  • Entfernen oder aktualisieren Sie die Manifestwerte, die die implizite Anforderung an die Funktion einführen.

Das Ändern der Funktionsdeklarationen in Ihrem Manifest hat keine Auswirkungen auf die tatsächliche Funktionsweise Ihrer App. Prüfen Sie daher, ob Ihre App auch ohne diese Funktionen ordnungsgemäß funktioniert.

Häufig gestellte Fragen

Welche Fahrzeuge haben Google-Integration?

Eine Liste der OEMs, die Modelle mit Google-Integration anbieten, finden Sie auf der Website Autos mit Google-Integration. Hardwarespezifikationen und andere Gerätedetails finden Sie im Gerätekatalog der Play Console.