Interfejsy HAL w HIDL zapewniają, że system Android (system.img lub framework) jest zgodny wstecznie. Testy Vendor Test Suite (VTS) zapewniają, że interfejs HAL działa zgodnie z oczekiwaniami (np. testy interfejsu HAL 1.1 są wykonywane we wszystkich implementacjach 1.2), ale testowanie frameworku jest potrzebne, aby zapewnić prawidłowe działanie frameworku z obsługiwanym interfejsem HAL (1.0, 1.1 lub 1.2).
Szczegółowe informacje o języku definiowania interfejsu HAL (HIDL) znajdziesz w artykułach HIDL, wersjowanie HIDL i wycofanie HIDL HAL.
Informacje o uaktualnieniach HAL
Istnieją 2 typy uaktualnień HAL: duże i małe. Większość systemów zawiera tylko jedną implementację HAL, ale obsługiwane są też implementacje. Na przykład:
android.hardware.teleport@1.0 # initial interface android.hardware.teleport@1.1 # minor version upgrade android.hardware.teleport@1.2 # another minor version upgrade ... android.hardware.teleport@2.0 # major version upgrade ...
Partycja systemowa zawiera zwykle demona frameworku (np. teleportd
), który zarządza komunikacją z określoną grupą implementacji HAL. Zamiast tego systemy mogą zawierać bibliotekę systemową (np. android.hardware.configstore-utils
), która implementuje wygodne zachowanie klienta. W przykładzie powyżej funkcja teleportd
musi działać niezależnie od tego, jaka wersja interfejsu HAL jest zainstalowana na urządzeniu.