À partir du 27 mars 2025, nous vous recommandons d'utiliser android-latest-release
au lieu de aosp-main
pour créer et contribuer à AOSP. Pour en savoir plus, consultez la section Modifications apportées à AOSP.
Vérification de la rétrocompatibilité du framework HIDL
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
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 (telle que 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.
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 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."]]