Benutzeroberflächenobjekt des Anbieters

In diesem Dokument wird das Design der Schnittstelle für die Anbieteroberfläche beschrieben. (VINTF-Objekt), das relevante Informationen über ein Gerät zusammenfasst und diese Informationen über eine abfragbare API verfügbar sind.

VINTF-Objektdesign

Ein VINTF-Objekt sammelt einige der benötigten Informationen direkt aus dem . Andere Aspekte, wie die Manifeste, werden statisch in den XML.

Abbildung 1: Manifeste, Kompatibilitätsmatrizes und Informationen zur Laufzeiterfassung.

Das VINTF-Objektdesign bietet Folgendes für Gerät und Framework Komponenten:

Für das Gerät Für das Framework
  • Definiert ein Schema für die statische Komponente (die Gerät Manifestdatei) enthalten.
  • Fügt Build-Zeitunterstützung für die Definition der Gerätemanifestdatei für eine bestimmte .
  • Definiert die abfragefähig API zur Laufzeit, die die Manifestdatei des Geräts (zusammen mit der anderen Laufzeit-Collectible-Informationen) und bündelt sie in das Abfrageergebnis.
  • Definiert ein Schema für die statische Komponente (die Framework Manifestdatei) enthalten.
  • Definiert die abfragefähig API zur Laufzeit, die die Framework-Manifestdatei abruft und sie verpackt in das Abfrageergebnis ein.

Das VINTF-Objekt muss zuverlässig sein und dieselben vollständigen Informationen enthalten unabhängig davon, wann das Objekt angefordert wird (siehe Einschränkungen).

Manifeste und Matrizen

Ab Android 8.0 fragt eine Laufzeit-API den Inhalt des Geräts ab und sendet diesen Over The Air (OTA) Update-Server und andere interessierte Parteien (z. B. CTS) DeviceInfo. Einige Informationen werden zur Laufzeit abgerufen, andere statisch definiert ist.

  • In der Device-Manifest-Datei wird die statische Komponente von was beschrieben. das Gerät dem Framework bieten kann.
  • Die Framework-Kompatibilitätsmatrix beschreibt, was die Das Android-Framework wird von einem bestimmten Gerät erwartet. Die Matrix ist eine statische Entität. dessen Zusammensetzung bei der Entwicklung der nächsten Veröffentlichung manuell ermittelt wird des Android-Frameworks an.
  • Das Framework-Manifest beschreibt allgemeine Dienste, die Framework auf dem Gerät bieten kann.
  • Die Gerätekompatibilitätsmatrix beschreibt die Dienste, die des Anbieterbilds an das Framework gefordert wird. Seine Zusammensetzung wird manuell ermittelt. bei der Entwicklung des Geräts.

Diese beiden Manifest- und Matrizenpaare müssen zum Zeitpunkt des OTA-Updates mit dass ein Gerät Framework-Updates erhalten kann, die mit der Funktionen. Im Allgemeinen beschreibt ein Manifest, was zur Verfügung gestellt wird, und ein Kompatibilitätsmatrix beschreibt, was erforderlich ist.

Dieser Abschnitt enthält die folgenden Details zu Manifesten und Matrizen:

  • Manifests definiert das Gerätemanifest, das Framework-Manifest und das Schema der Manifestdatei.
  • Kompatibilität Matrixes definieren das Schema für die Kompatibilitätsmatrix.
  • Details zum FCM-Lebenszyklus wie HIDL HALs verworfen und entfernt werden und wie FCM-Dateien in den Status der HAL-Version widerspiegeln.
  • DM-Entwicklung beschreibt wie Anbieter die FCM-Zielversion auf dem Gerät definieren und deklarieren können für neue Geräte oder implementieren Sie neue HAL-Versionen und erhöhen Sie FCM-Zielversion beim Upgrade des Anbieter-Images für alte Geräte
  • Zuordnungsregeln definiert die Regeln für eine erfolgreiche Übereinstimmung zwischen einer Kompatibilitätsmatrix und einer Manifests.