Para simplificar el proceso de llevar apps para dispositivos móviles a dispositivos con el SO Android Automotive, algunos automóviles incluyen un modo de compatibilidad que aborda los problemas comunes que se presentan cuando se llevan apps para dispositivos móviles existentes a los automóviles.
Si bien el programa Apps para dispositivos móviles aptas para automóviles usa este modo de compatibilidad, las apps que no forman parte de ese programa también pueden ejecutarse en él.
Información sobre el modo de compatibilidad
El modo de compatibilidad del SO Android Automotive es una función de software disponible en algunos vehículos para mejorar la experiencia del usuario de las apps creadas para dispositivos móviles cuando se ejecutan en el SO Android Automotive.
Navegación hacia atrás
A diferencia de otros factores de forma, no es necesario que los dispositivos con el SO Android Automotive tengan un botón Atrás de hardware o software. El modo de compatibilidad aborda este problema, ya que requiere una ayuda visual para volver proporcionada por el sistema, como un botón de hardware, un botón de software o un gesto. Esto significa que las apps no necesitan proporcionar sus propios controles de navegación hacia atrás cuando solo segmentan dispositivos con el modo de compatibilidad.
Con el modo de compatibilidad
Sin el modo de compatibilidad
Renderización de área segura
En los automóviles, los elementos de software y hardware, como las barras del sistema y los cortes de pantalla, pueden invalidar las suposiciones que se hacen cuando se desarrollan apps principalmente para dispositivos móviles. El modo de compatibilidad soluciona este problema renderizando las apps dentro de un área segura.
Ajuste de la densidad
Debido a que la distancia de interacción en los automóviles es mayor que con otros dispositivos con pantalla grande, los objetivos táctiles y los tamaños de fuente suelen ser más pequeños de lo recomendado cuando se ejecutan en un automóvil. El modo de compatibilidad aborda este problema, ya que permite que los OEM especifiquen un factor de ajuste de DPI que se usa cuando se renderizan las apps.
Ciclo de vida de la actividad
Como se describe en Cómo agregar compatibilidad con el SO Android Automotive a tu app para automóviles estacionados, el SO bloquea automáticamente las actividades de tu app cuando el automóvil entra en modo de conducción para reducir las distracciones para el conductor. En los dispositivos con modo de compatibilidad, la IU de bloqueo del OEM no debe ser transparente, de modo que tu app ya no sea visible y realice la transición al estado de ciclo de vida detenido cuando se bloquee.
Cómo configurar el modo de compatibilidad
De forma predeterminada, las actividades de tu app se ejecutan en modo de compatibilidad cuando el dispositivo lo admite. Las actividades no se ejecutan en modo de compatibilidad cuando hay un elemento <uses-feature> para la función android.hardware.type.automotive en el manifiesto:
<manifest ...>
...
<uses-feature android:name="android.hardware.type.automotive" ...>
...
</manifest>
Si prefieres que tus actividades se ejecuten en el modo de compatibilidad de pantalla, independientemente del elemento <uses-feature> descrito anteriormente, puedes agregar el siguiente elemento <meta-data> en el manifiesto de tu app:
<application ...>
...
<meta-data android:name="android.software.car.display_compatibility" android:value="true"/>
...
</application>
Prueba tu app en modo de compatibilidad
Para probar tu app en el modo de compatibilidad, puedes usar las imágenes genéricas del sistema con el modo de compatibilidad o las imágenes del sistema del SO Android Automotive en la Pixel Tablet.
Cómo determinar la compatibilidad del dispositivo
Los dispositivos que admiten el modo de compatibilidad del SO Android Automotive deben declarar la función del sistema android.software.car.display_compatibility. Para descubrir qué dispositivos admiten esta función, puedes usar el catálogo de dispositivos de Play Console.