Per semplificare la procedura di trasferimento delle app mobile sui dispositivi con sistema operativo Android Automotive, alcune auto sono dotate di una modalità di compatibilità che risolve i problemi comuni riscontrati durante il trasferimento delle app mobile esistenti nelle auto.
Sebbene questa modalità di compatibilità sia utilizzata dal programma per app mobile Car ready, possono essere eseguite anche le app che non fanno parte di questo programma.
Informazioni sulla modalità di compatibilità
La modalità di compatibilità del sistema operativo Android Automotive è una funzionalità software disponibile su alcuni veicoli per migliorare l'esperienza utente delle app sviluppate per i dispositivi mobili quando vengono eseguite su Android Automotive OS.
Navigazione a ritroso
A differenza di altri fattori di forma, non è necessario che i dispositivi con sistema operativo Android Automotive abbiano un'affordance per il tasto Indietro hardware o software. La modalità di compatibilità risolve il problema richiedendo un'affordance Indietro fornita dal sistema, che si tratti di un pulsante hardware, di un pulsante software, di un gesto o di altro. In questo modo, le app non devono più garantire la navigabilità solo tramite i propri elementi dell'interfaccia utente.
Rendering dell'area sicura
Nelle auto, elementi software e hardware come barre di sistema e ritagli del display potrebbero violare le ipotesi fatte dalle app sviluppate principalmente per dispositivi mobili. La modalità di compatibilità risolve questo problema garantendo che le app vengano visualizzate in un'area sicura.
Scalabilità della densità
Poiché la distanza di interazione nelle auto è maggiore rispetto ad altri dispositivi con schermi di grandi dimensioni, i target di tocco e le dimensioni dei caratteri sono spesso inferiori a quanto consigliato quando si utilizza l'app su un'auto. La modalità di compatibilità risolve il problema consentendo agli OEM di specificare un fattore di scala DPI utilizzato durante il rendering delle app.
Ciclo di vita dell'attività
Come descritto in Creare app per il parcheggio per il sistema operativo Android Automotive, il sistema operativo blocca automaticamente le attività della tua app quando l'auto entra in modalità di guida per ridurre le distrazioni per il conducente. Sui dispositivi con modalità di compatibilità, l'interfaccia utente di blocco dell'OEM non deve essere trasparente, pertanto la tua app non è più visibile e passa allo stato di ciclo di vita Interrotta quando viene bloccata.
Configurare la modalità di compatibilità
Per impostazione predefinita, le attività dell'app vengono eseguite in modalità di compatibilità se il dispositivo lo supporta. Le attività non vengono eseguite in modalità compatibilità nei seguenti casi:
- Quando nel manifest è presente un elemento
<uses-feature>
per la funzionalitàandroid.hardware.type.automotive
:
<application ...>
...
<uses-feature android:name="android.hardware.type.automotive" ...>
...
</application>
- Se è presente un elemento manifest
<activity>
che contiene il seguente elemento<meta-data>
:
<meta-data android:name="distractionOptimized" android:value="true">
Se una di queste condizioni si applica alla tua app, ma preferisci che le tue attività vengano eseguite in modalità di compatibilità con il display, puoi aggiungere il seguente elemento <meta-data>
nel file manifest della tua app:
<application ...>
...
<meta-data android:name="android.software.car.display_compatibility" android:value="true"/>
...
</application>
Testare l'app in modalità di compatibilità
Per testare l'app in modalità di compatibilità, puoi utilizzare le immagini di sistema generiche con modalità di compatibilità.
Determinare il supporto del dispositivo
I dispositivi che supportano la modalità di compatibilità del sistema operativo Android Automotive devono dichiarare la funzionalità di sistema android.software.car.display_compatibility
. Per scoprire quali dispositivi supportano questa funzionalità, puoi utilizzare il Catalogo dei dispositivi di Play Console.