I token di progettazione OEM sono un'implementazione del sistema operativo Android Automotive (AAOS) del Material Design di un sistema operativo completo. A differenza dell'approccio algoritmico o di selezione degli utenti per i valori dei token sui dispositivi mobili, gli OEM designano per la progettazione dei valori dei token. I token di progettazione rappresentano le piccole e ripetute decisioni di progettazione che compongono lo stile visivo del sistema di progettazione e sostituire i valori statici con nomi autoesplicativi. I token sono analoghe a quelle definite dal sistema Material Design.
Libreria di token OEM
I token di progettazione OEM fanno riferimento tramite la libreria di token OEM, composta da tre illustrati nella Figura 1.
Figura 1. Componenti della libreria di token OEM.
Libreria statica
Il componente della libreria statica della libreria di token dell'OEM facilita l'accesso ai valori dei token come .
- Fornisce le API per accedere ai valori OEM per i token.
- Consente di eseguire l'override dei riferimenti ai token nel tema con valori OEM.
Libreria condivisa
Il componente Libreria condivisa deve definire quanto segue:
- Nome della libreria.
- Attivazione booleana per l'attivazione dei valori dei token OEM.
- Stile che fornisce i valori dei token OEM.
Per soddisfare la proprietà OEM di questo componente della libreria condivisa, incluso un pacchetto definito dall'OEM gli OEM possono creare un override dell'implementazione della libreria condivisa.
Figura 2. Eseguire l'override dell'implementazione della libreria condivisa.
Libreria condivisa OEM
Gli override OEM del componente Libreria condivisa consentono la proprietà OEM della libreria, mentre mantenere la compatibilità con altri componenti della libreria di token dell'OEM, fornendo un mezzo per il nome e la firma del pacchetto che devono essere impostati dagli OEM lasciando l'implementazione libreria altrimenti non modificata.
Gli override per una libreria condivisa possono essere definiti come mostrato di seguito:
override_android_app { name: "[OEM]-token-shared-lib", base: "token-shared-lib", package_name: "com.[OEM].sharedlib", rename_resources_package: false, certificate: … }
Per impostare i valori del token, consulta la sezione Specificare i valori dei token OEM.
Personalizzazioni della libreria condivisa OEM
Per supportare schemi diversi per i valori dei token (ad esempio la differenziazione del modello o della modalità Drive), Gli OEM possono fornire valori dinamici per i token scegliendo come target la libreria condivisa dell'OEM con il runtime Overlay delle risorse (RRO). Per saperne di più, vedi Modificare il valore delle risorse di un'app in fase di runtime.
Per impostare i valori del token, consulta la sezione Specificare i valori dei token OEM.
Specifica i valori del token OEM
Per specificare i valori del token, imposta l'attributo corrispondente nello stile OemStyle
su
il valore richiesto.
<resources> <style name="OemStyle"> <item name="colorPrimary">#B0C5FF</item> <item name="colorOnPrimary">#002B76</item> <item name="colorPrimaryContainer">#003FA4</item> <item name="colorOnPrimaryContainer">#D9E2FF</item> … </style> </resources>
Attiva i valori OEM
Per consentire alle app di accedere ai valori dei token forniti dall'OEM, gli OEM devono prima attivare l'override delle impostazioni predefinite
configurando il valore booleano enable_oem_tokens
su true
.
Valori dei token RRO
Analogamente all'impostazione dei valori dei token in OemStyle
, è possibile utilizzare gli RRO per modificare
per fornire valori di token alternativi.
<resources> <style name="OemStyle"> <item name="com.android.oem.tokens:colorPrimary">#B0C5FF</item> <item name="com.android.oem.tokens:colorOnPrimary">#002B76</item> <item name="com.android.oem.tokens:colorPrimaryContainer">#003FA4</item> <item name="com.android.oem.tokens:colorOnPrimaryContainer">#D9E2FF</item> … </style> </resources>
Gli RRO devono impostare gli attributi della libreria condivisa sullo stile specificando la libreria condivisa. nome.
Configura ultimo caricamento
I sistemi che includono un'implementazione OEM di una libreria condivisa di token devono configurare il sistema
per caricare la libreria condivisa al termine delle lezioni dell'app. Per farlo, includi il nome della libreria
(com.android.oem.tokens
) in config_sharedLibrariesLoadedAfterApp
configurazione sul sistema. Se hai accesso a Google Automotive Services (GAS), questa funzionalità viene applicata come
requisito.
<!-- The OEM token shared library will be loaded after app classes --> <string-array name="config_sharedLibrariesLoadedAfterApp" translatable="false"> <item>com.android.oem.tokens</item> </string-array>
Best practice
Di seguito sono descritte le best practice per la libreria di token OEM.
Attivare una strategia di aggiornamento flessibile
Consulta le strategie riportate di seguito per garantire flessibilità per quanto riguarda gli aggiornamenti.
Libreria condivisa OEM
Poiché le librerie condivise dal sistema devono essere preinstallate nelle immagini di sistema, i dispositivi devono: viene spedito con la libreria oppure la biblioteca deve essere aggiunta nell'ambito di un aggiornamento OTA (over-the-air) consulta gli aggiornamenti OTA). Tuttavia, inclusa un'implementazione stub di un override OEM di una libreria condivisa di token OEM su un l'immagine di sistema consente di eseguire il push di un aggiornamento di un'implementazione funzionante completa ai dispositivi senza la necessità di un'agenzia di viaggi online.
RRO della libreria condivisa
Anche se non è necessario installare gli RRO come app di sistema, ciò fornisce alcune aggiornare il comportamento desiderato.
- Aggiornamenti automatici delle app quando gli utenti non hanno eseguito l'accesso.
- Non possono essere disinstallate dall'utente (gli utenti possono solo disinstallare gli aggiornamenti).