Les HAL HIDL garantissent la rétrocompatibilité du système de base Android (également appelé system.img ou framework). Bien que les tests de la suite de tests du fournisseur (VTS) garantissent que les HAL fonctionnent comme prévu (par exemple, les tests HAL 1.1 sont exécutés sur toutes les implémentations 1.2), des tests du framework sont nécessaires pour s'assurer qu'en cas de fourniture d'un HAL compatible (1.0, 1.1 ou 1.2), le framework fonctionne correctement avec ce HAL.
Pour en savoir plus sur le langage de définition d'interface HAL (HIDL), consultez HIDL, Versioning HIDL et Obsoletement de HAL HIDL.
À propos des mises à niveau HAL
Il existe deux types de mises à niveau de HAL : majeurs et mineures. La plupart des systèmes n'incluent qu'une seule implémentation HAL, mais plusieurs implémentations sont acceptées. Exemple :
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 ...
La partition système inclut généralement un daemon de framework (tel que teleportd
) qui gère la communication avec un groupe spécifique d'implémentations HAL. Les systèmes peuvent également inclure une bibliothèque système (comme android.hardware.configstore-utils
) qui implémente un comportement client pratique. Dans l'exemple ci-dessus, teleportd
doit fonctionner quelle que soit la version du HAL installée sur l'appareil.