HIDL HAL は、Android コアシステム(system.img またはフレームワークとも呼ばれます)が下位互換性を持つことを保証します。ベンダー テストスイート(VTS)のテストでは、HAL が期待どおりに動作することを確認します(たとえば、1.1 HAL のテストはすべての 1.2 実装で実施されます)。一方、フレームワークのテストでは、サポートする HAL(1.0、1.1、1.2)が提供されているときに、フレームワークがその HAL とともに適切に動作することを確認する必要があります。
HAL インターフェース定義言語(HIDL)の詳細については、HIDL、HIDL のバージョニング、および HIDL HAL のサポート終了をご覧ください。
HAL のアップグレードについて
HAL のアップグレードには、メジャーとマイナーの 2 種類があります。 ほとんどのシステムには HAL 実装が 1 つしかありませんが、複数の実装がサポートされています。次に例を示します。
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 ...
システム パーティションには通常、HAL 実装の特定のグループとの通信を管理するフレームワーク デーモン(teleportd
など)が含まれます。あるいは、便利なクライアントの動作を実装するシステム ライブラリ(android.hardware.configstore-utils
など)をシステムに含めることもできます。上記の例では、デバイスにインストールされている HAL のバージョンに関係なく teleportd
が機能する必要があります。