W tym dokumencie opisano projekt obiektu interfejsu dostawcy (obiekt VINTF), który agreguje istotne informacje o urządzeniu i udostępnia je za pośrednictwem interfejsu API z możliwością wysyłania zapytań .
Projekt obiektu VINTF
Obiekt VINTF zbiera część potrzebnych informacji bezpośrednio z urządzenia. Inne aspekty, takie jak manifesty, są opisane statycznie w formacie XML.
Projekt obiektowy VINTF zapewnia następujące elementy dla komponentów urządzeń i szkieletu:
Dla urządzenia | Dla Ram |
---|---|
|
|
Obiekt VINTF musi być niezawodny i dostarczać tych samych pełnych informacji niezależnie od tego, kiedy zażądano obiektu (patrz Zastrzeżenia ).
Manifesty i matryce
Począwszy od wersji Androida 8.0, interfejs API środowiska wykonawczego pyta o zawartość urządzenia i wysyła te informacje do serwera aktualizacji OTA (Over-the-Air) i innych zainteresowanych stron (takich jak CTS DeviceInfo
). Niektóre informacje są pobierane w czasie wykonywania, a niektóre są definiowane statycznie.
- Manifest urządzenia opisuje statyczny komponent tego, co urządzenie może udostępnić platformie.
- Macierz kompatybilności frameworka opisuje, czego framework Android oczekuje od danego urządzenia. Matryca jest statyczną jednostką, której skład jest ustalany ręcznie podczas tworzenia kolejnej wersji frameworka Android.
- Manifest struktury opisuje usługi wysokiego poziomu, które platforma może zapewnić urządzeniu.
- Macierz kompatybilności urządzeń opisuje usługi, których obraz dostawcy wymaga od platformy. Jego skład ustalany jest ręcznie podczas opracowywania urządzenia.
Te dwie pary manifestów i macierzy muszą zostać uzgodnione w czasie OTA, aby mieć pewność, że urządzenie będzie mogło uzyskać aktualizacje platformy zgodne z możliwościami urządzenia. Ogólnie rzecz biorąc, manifest opisuje, co jest dostarczane, a macierz zgodności opisuje, co jest wymagane.
Ta sekcja zawiera następujące szczegóły dotyczące manifestów i macierzy:
- Manifesty definiują manifest urządzenia, manifest struktury i schemat pliku manifestu.
- Matryce zgodności definiuje schemat macierzy zgodności.
- Cykl życia FCM szczegółowo opisuje, w jaki sposób warstwy HAL HIDL są przestarzałe i usuwane oraz w jaki sposób pliki FCM są modyfikowane w celu odzwierciedlenia stanu wersji HAL.
- DM Development opisuje, w jaki sposób dostawcy mogą definiować i deklarować docelową wersję FCM w manifeście urządzenia dla nowych urządzeń lub wdrażać nowe wersje HAL i zwiększać docelową wersję FCM podczas aktualizacji obrazu dostawcy dla starych urządzeń.
- Reguły dopasowywania definiują reguły pomyślnego dopasowania między macierzą zgodności a manifestem.