HIDL-HALs garantieren, dass das Android-Kernsystem (auch bekannt als system.img oder das Framework) abwärtskompatibel ist. Während Tests der Vendor Test Suite (VTS) sicherstellen, dass HALs wie erwartet funktionieren (z. B. werden 1.1-HAL-Tests auf allen 1.2-Implementierungen ausgeführt), sind Framework-Tests erforderlich, um sicherzustellen, dass bei Bereitstellung eines unterstützten HAL (1.0, 1.1 oder 1.2) der Framework funktioniert ordnungsgemäß mit diesem HAL.
Einzelheiten zur HAL-Schnittstellendefinitionssprache (HIDL) finden Sie unter HIDL , HIDL-Versionierung und HIDL HAL Deprecation .
Über HAL-Upgrades
Es gibt zwei Arten von HAL-Upgrades: Haupt- und Nebenupgrades . Die meisten Systeme enthalten nur eine HAL-Implementierung, es werden jedoch mehrere Implementierungen unterstützt. Zum Beispiel:
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 ...
Die Systempartition enthält normalerweise einen Framework-Daemon (z. B. teleportd
), der die Kommunikation mit einer bestimmten Gruppe von HAL-Implementierungen verwaltet. Alternativ könnten Systeme stattdessen eine Systembibliothek (z. B. android.hardware.configstore-utils
) enthalten, die praktisches Client-Verhalten implementiert. Im obigen Beispiel muss teleportd
funktionieren, unabhängig davon, welche HAL-Version auf dem Gerät installiert ist.