Um die Übertragung von mobilen Apps auf Android Automotive OS-Geräte zu vereinfachen, bieten bestimmte Autos einen Kompatibilitätsmodus, der häufige Probleme behebt, die bei der Übertragung vorhandener mobiler Apps auf Autos auftreten.
Dieser Kompatibilitätsmodus wird zwar vom Programm Mit Autos kompatible Apps verwendet, kann aber auch für Apps genutzt werden, die nicht Teil dieses Programms sind.
Kompatibilitätsmodus
Der Kompatibilitätsmodus für Android Automotive OS ist eine Softwarefunktion, die auf einigen Fahrzeugen verfügbar ist, um die Nutzerfreundlichkeit von Apps zu verbessern, die für Mobilgeräte entwickelt wurden und unter Android Automotive OS ausgeführt werden.
Rückwärtsnavigation
Im Gegensatz zu anderen Formfaktoren müssen Android Automotive OS-Geräte keine Hardware- oder Software-Schaltfläche zum Zurückgehen haben. Im Kompatibilitätsmodus wird dieses Problem behoben, indem eine vom System bereitgestellte Zurück-Funktion erforderlich ist, z. B. eine Hardware- oder Softwaretaste oder eine Geste. Das bedeutet, dass Apps keine eigenen Steuerelemente für die Rückwärtsnavigation bereitstellen müssen, wenn sie nur auf Geräte mit Kompatibilitätsmodus ausgerichtet sind.
Mit Kompatibilitätsmodus
Ohne Kompatibilitätsmodus
Rendering des sicheren Bereichs
In Autos können Software- und Hardwareelemente wie Systemleisten und Displayausschnitte Annahmen ungültig machen, die bei der Entwicklung von Apps hauptsächlich für Mobilgeräte getroffen wurden. Im Kompatibilitätsmodus werden Apps in einem sicheren Bereich gerendert.
Skalierung der Pixeldichte
Da der Interaktionsabstand in Autos größer ist als bei anderen Geräten mit großem Display, sind Touch-Ziele und Schriftgrößen oft kleiner als empfohlen, wenn die App auf einem Auto ausgeführt wird. Im Kompatibilitätsmodus können OEMs einen DPI-Skalierungsfaktor angeben, der beim Rendern von Apps verwendet wird.
Aktivitätslebenszyklus
Wie unter Unterstützung von Android Automotive OS zu deiner geparkten App hinzufügen beschrieben, blockiert das Betriebssystem die Aktivitäten deiner App automatisch, wenn das Auto in den Fahrmodus wechselt, um den Fahrer nicht abzulenken. Auf Geräten mit Kompatibilitätsmodus darf die blockierende Benutzeroberfläche des OEM nicht transparent sein, damit Ihre App nicht mehr sichtbar ist und bei einer Blockierung in den Lebenszyklusstatus „Beendet“ übergeht.
Kompatibilitätsmodus konfigurieren
Standardmäßig werden die Aktivitäten Ihrer App im Kompatibilitätsmodus ausgeführt, wenn das Gerät dies unterstützt. Aktivitäten werden nicht im Kompatibilitätsmodus ausgeführt, wenn im Manifest ein <uses-feature>-Element für das android.hardware.type.automotive-Feature vorhanden ist:
<manifest ...>
...
<uses-feature android:name="android.hardware.type.automotive" ...>
...
</manifest>
Wenn Ihre Aktivitäten unabhängig vom oben beschriebenen <uses-feature>-Element im Anzeigekompatibilitätsmodus ausgeführt werden sollen, können Sie das folgende <meta-data>-Element im Manifest Ihrer App hinzufügen:
<application ...>
...
<meta-data android:name="android.software.car.display_compatibility" android:value="true"/>
...
</application>
App im Kompatibilitätsmodus testen
Wenn Sie Ihre App im Kompatibilitätsmodus testen möchten, können Sie die generischen System-Images mit Kompatibilitätsmodus oder die Android Automotive OS-System-Images für das Pixel Tablet verwenden.
Gerätesupport ermitteln
Geräte, die den Android Automotive OS-Kompatibilitätsmodus unterstützen, müssen die Systemfunktion android.software.car.display_compatibility deklarieren. Im Gerätekatalog der Play Console können Sie nachsehen, welche Geräte dieses Feature unterstützen.