Project Treble aims to modularize Android by moving hardware-related code out of the framework and into the vendor implementation. This allows for faster OTA updates by separating the framework updates from vendor updates. The key aspects of Treble include defining a vendor interface (VINTF), creating a vendor NDK (VNDK) for hardware abstraction, and requiring a vendor test suite (VTS) for quality control. The goals are to make the framework compatible across different vendor implementations and allow checking of compatibility between framework and vendor code.
6. 6
Modularizing Android
? Key Implementation
? move hw related code out of framework
? Separate build and image
? Versioning is mandatory for all HAL
? Process boundary from framework
? VTS (vendor test suite) to certify quality
of Vendor implementation - going to be
mandated like CTS
? Goal: OTA framework and
vendor implementation
separately
? New framework is able to be
compatible with old vendor
implementation
? Able to check compatibility between
framework and vendor implementation
? Testability and quality of vendor
implementation alone
22. 22
HIDL & Hal Binderization
? HIDL: AIDL for HAL
? All the current HALs need be re-implemented by following the HIDL
? Communicated with system services via binder (improved by Treble) and
Fast message Queue.
? HAL implementation
? Only dependent on NDK and VNDK
? Only dependent on shared library to avoid multi VNDK conflict.
27. 27
Certification
? VINTF implementation Release
? Must Pass VTS
? Must Pass CTS using the pure AOSP Framework
? Framework Release
? Must Pass CTS with any supported VINTF
implementation