A partir de 27 de março de 2025, recomendamos usar android-latest-release
em vez de aosp-main
para criar e contribuir com o AOSP. Para mais informações, consulte Mudanças no AOSP.
Verificação da compatibilidade de HIDL com versões anteriores do framework
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
HALs de HIDL
garantem que o sistema principal do Android (também conhecido como system.img ou framework) seja
compatível com versões anteriores. Enquanto os testes do Conjunto de teste de fornecedor (VTS, na sigla em inglês)
garantem que as HALs funcionem conforme o esperado (por exemplo, os testes HAL 1.1 são executados em todas
as implementações 1.2), o teste de framework é necessário para garantir que, quando uma
HAL com suporte (1.0, 1.1 ou 1.2) for fornecida, o framework funcione corretamente
com essa HAL.
Para detalhes sobre a linguagem de definição de interface HAL (HIDL), consulte
HIDL,
controle de versões do HIDL e
Suspensão de uso do HAL do HIDL.
Sobre os upgrades do HAL
Há dois tipos de upgrades do HAL: major e minor.
A maioria dos sistemas inclui apenas uma implementação do HAL, mas há suporte para
várias implementações. 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 normalmente inclui um daemon de framework (como
teleportd
) que gerencia a comunicação com um grupo específico de
implementações de HAL. Como alternativa, os sistemas podem
incluir uma biblioteca do sistema (como
android.hardware.configstore-utils
) que implementa o comportamento
conveniente do cliente. No exemplo acima, teleportd
precisa funcionar
independentemente da versão do HAL instalada no dispositivo.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-07-27 UTC."],[],[],null,["# HIDL Framework backward compatibility verification\n\n[HIDL HALs](/docs/core/architecture#hidl)\nguarantee the Android core system (aka system.img or the framework) is\nbackward compatible. While [Vendor Test Suite (VTS)](/docs/compatibility/vts)\ntests ensure that HALs work as expected (e.g. 1.1 HAL tests are run on all\n1.2 implementations), framework testing is needed to ensure that when a\nsupported HAL (1.0, 1.1, or 1.2) is provided, the framework works properly\nwith that HAL.\n\nFor details on HAL interface definition language (HIDL), refer to\n[HIDL](/docs/core/architecture/hidl), [HIDL versioning](/docs/core/architecture/hidl/versioning), and [HIDL HAL Deprecation](/docs/core/architecture/vintf/fcm#hal-version-deprecation).\n\nAbout HAL upgrades\n------------------\n\nThere are two types of HAL upgrades: *major* and *minor*.\nMost systems include only one HAL implementation, but multiple\nimplementations are supported. For example: \n\n```\nandroid.hardware.teleport@1.0 # initial interface\nandroid.hardware.teleport@1.1 # minor version upgrade\nandroid.hardware.teleport@1.2 # another minor version upgrade\n...\nandroid.hardware.teleport@2.0 # major version upgrade\n...\n```\n\nThe system partition typically includes a framework daemon (such as\n`teleportd`) that manages communication with a specific group of\nHAL implementations. Alternatively, systems might instead\ninclude a system library (such as\n`android.hardware.configstore-utils`) that implements convenient\nclient behavior. In the example above, `teleportd` must work no\nmatter what version of the HAL is installed on the device."]]