HALs HIDL garantem que o sistema principal do Android (também conhecido como system.img ou framework) seja compatível com versões anteriores. Embora os testes Vendor Test Suite (VTS) garantam que os HALs funcionem conforme o esperado (por exemplo, testes 1.1 HAL são executados em todas as implementações 1.2), o teste de estrutura é necessário para garantir que, quando um HAL compatível (1.0, 1.1 ou 1.2) for fornecido, o framework funciona corretamente com esse HAL.
Para obter detalhes sobre a linguagem de definição de interface HAL (HIDL), consulte HIDL , controle de versão HIDL e depreciação HIDL HAL .
Sobre atualizações HAL
Existem dois tipos de atualizações HAL: principais e secundárias . A maioria dos sistemas inclui apenas uma implementação HAL, mas várias implementações são suportadas. Por exemplo:
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 ...
A partição do sistema geralmente inclui um daemon de estrutura (como teleportd
) que gerencia a comunicação com um grupo específico de implementações HAL. Como alternativa, os sistemas podem incluir uma biblioteca de sistema (como android.hardware.configstore-utils
) que implementa o comportamento conveniente do cliente. No exemplo acima, o teleportd
deve funcionar independentemente da versão do HAL instalada no dispositivo.