Google 致力于为黑人社区推动种族平等。查看具体举措
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Oggetto interfaccia fornitore

Questo documento descrive la progettazione dell'oggetto vendor interface ( oggetto VINTF), che aggrega le informazioni rilevanti su un dispositivo e rende tali informazioni disponibili tramite un'API interrogabile .

Oggetto design VINTF

Un oggetto VINTF raccoglie alcune delle informazioni necessarie direttamente dal dispositivo. Altri aspetti, come i manifesti, sono descritti staticamente in XML.

Figura 1. Manifesti, matrici di compatibilità e informazioni raccoglibili in fase di esecuzione

Il design degli oggetti VINTF fornisce quanto segue per i componenti del dispositivo e del framework:

Per il dispositivo Per il Framework
  • Definisce uno schema per il componente statico (il file manifest del dispositivo ).
  • Aggiunge il supporto del tempo di compilazione per la definizione del file manifest del dispositivo per un determinato dispositivo.
  • Definisce l' API interrogabile in fase di esecuzione che recupera il file manifest del dispositivo (insieme alle altre informazioni raccoglibili in fase di esecuzione) e le impacchetta nel risultato della query.
  • Definisce uno schema per il componente statico (il file manifest del framework ).
  • Definisce l' API interrogabile in fase di esecuzione che recupera il file manifest del framework e lo impacchetta nel risultato della query.

L'oggetto VINTF deve essere affidabile e fornire le stesse informazioni complete indipendentemente da quando l'oggetto viene richiesto (vedere Avvertenze ).

Manifesti e matrici

A partire da Android 8.0, un'API runtime interroga ciò che è sul dispositivo e invia tali informazioni al server di aggiornamento Over-the-Air (OTA) e ad altre parti interessate (come CTS DeviceInfo ). Alcune informazioni vengono recuperate in fase di esecuzione e altre sono definite staticamente.

  • Il manifesto del dispositivo descrive il componente statico di ciò che il dispositivo può fornire al framework.
  • La matrice di compatibilità del framework descrive ciò che il framework Android si aspetta da un determinato dispositivo. La matrice è un'entità statica la cui composizione viene determinata manualmente durante lo sviluppo della prossima versione del framework Android.
  • Il manifesto del framework descrive i servizi di alto livello che il framework può fornire al dispositivo.
  • La matrice di compatibilità del dispositivo descrive i servizi richiesti dall'immagine del fornitore del framework. La sua composizione viene determinata manualmente durante lo sviluppo del dispositivo.

Queste due coppie di manifesti e matrici devono essere riconciliate in fase OTA per garantire che un dispositivo possa ottenere aggiornamenti del framework compatibili con le funzionalità del dispositivo. In generale, un manifest descrive ciò che viene fornito e una matrice di compatibilità descrive ciò che è richiesto.

Questa sezione include i seguenti dettagli su manifesti e matrici:

  • Manifests definisce il manifesto del dispositivo, il manifesto del framework e lo schema del file manifest.
  • Matrici di compatibilità definisce lo schema per la matrice di compatibilità.
  • FCM Lifecycle descrive in dettaglio come gli HAL HIDL sono deprecati e rimossi e come i file FCM vengono modificati per riflettere lo stato della versione HAL.
  • DM Development descrive come i fornitori possono definire e dichiarare la versione FCM di destinazione nel manifesto del dispositivo per i nuovi dispositivi o implementare nuove versioni di HAL e incrementare la versione di FCM di destinazione durante l'aggiornamento dell'immagine del fornitore per i vecchi dispositivi.
  • Matching Rules definisce le regole per una corretta corrispondenza tra una matrice di compatibilità e un manifest.