Gli HAL HIDL
garantiscono la compatibilità con le versioni precedenti del sistema core di Android (chiamato anche system.img o framework)
. Mentre i test di Vendor Test Suite (VTS)
assicurano che gli HAL funzionino come previsto (ad esempio, i test HAL 1.1 vengono eseguiti su tutte le implementazioni 1.2), è necessario eseguire test del framework per assicurarsi che, quando viene fornito un HAL supportato (1.0, 1.1 o 1.2), il framework funzioni correttamente con quell'HAL.
Per informazioni dettagliate sul linguaggio di definizione dell'interfaccia HAL (HIDL), consulta HIDL, Versioning HIDL e Deprecazione di HIDL HAL.
Informazioni sugli upgrade HAL
Esistono due tipi di upgrade HAL: principali e secondari. La maggior parte dei sistemi include una sola implementazione HAL, ma sono supportate più implementazioni. Ad esempio:
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 ...
In genere, la partizione di sistema include un daemon del framework (ad esempio
teleportd) che gestisce la comunicazione con un gruppo specifico di
implementazioni HAL. In alternativa, i sistemi potrebbero invece
includere una libreria di sistema (ad esempio
android.hardware.configstore-utils) che implementa un comportamento client pratico. Nell'esempio precedente, teleportd deve funzionare indipendentemente dalla versione dell'HAL installata sul dispositivo.