Starting March 27, 2025, we recommend using android-latest-release
instead of aosp-main
to build and contribute to AOSP. For more information, see Changes to AOSP.
Documentation for HIDL interfaces
Stay organized with collections
Save and categorize content based on your preferences.
The HAL Interface Description Language (HIDL) specifies the interface between a HAL and its users. It defines types and method calls, collected into interfaces and packages. HIDL is a system for communicating between codebases that may be compiled independently and is intended for inter-process communication. See the HIDL guides.
The autogenerated documentation for the HIDL (.hal) files have been deprecated.
For the details of the interface specifications, consult the HIDL source files
in AOSP.
HIDL interface files are in four different locations in AOSP:
- /hardware/interfaces
- /frameworks/hardware/interfaces
- /system/hardware/interfaces
- /system/libhidl/transport
See the sections below for links to the HIDL source files in each location.
/hardware/interfaces
/frameworks/hardware/interfaces
/system/hardware/interfaces
/system/libhidl/transport
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-06-18 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-18 UTC."],[],[],null,["# Documentation for HIDL interfaces\n\nThe HAL Interface Description Language (HIDL) specifies the interface between a HAL and its users. It defines types and method calls, collected into interfaces and packages. HIDL is a system for communicating between codebases that may be compiled independently and is intended for inter-process communication. See the HIDL guides.\n\nThe autogenerated documentation for the HIDL (.hal) files have been deprecated.\nFor the details of the interface specifications, consult the HIDL source files\nin AOSP.\n\nHIDL interface files are in four different locations in AOSP:\n\n- /hardware/interfaces\n- /frameworks/hardware/interfaces\n- /system/hardware/interfaces\n- /system/libhidl/transport\n\nSee the sections below for links to the HIDL source files in each location.\n\n/hardware/interfaces\n--------------------\n\n- [/hardware/interfaces/](https://android.googlesource.com/platform/hardware/interfaces/+/android16-release)\n - [atrace/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/atrace/)\n - [audio/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/audio/)\n - [authsecret/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/authsecret/)\n - [automotive/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/automotive/)\n - [biometrics/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/biometrics/)\n - [bluetooth/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/bluetooth/)\n - [boot/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/boot/)\n - [broadcastradio/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/broadcastradio/)\n - [camera/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/camera/)\n - [cas/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/cas/)\n - [compatibility_matrices/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/compatibility_matrices/)\n - [configstore/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/configstore/)\n - [confirmationui/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/confirmationui/)\n - [contexthub/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/contexthub/)\n - [current.txt](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/current.txt)\n - [drm/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/drm/)\n - [dumpstate/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/dumpstate/)\n - [fastboot/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/fastboot/)\n - [gatekeeper/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/gatekeeper/)\n - [gnss/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/gnss/)\n - [graphics/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/graphics/)\n - [health/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/health/)\n - [ir/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/ir/)\n - [keymaster/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/keymaster/)\n - [light/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/light/)\n - [media/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/media/)\n - [memtrack/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/memtrack/)\n - [neuralnetworks/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/neuralnetworks/)\n - [nfc/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/nfc/)\n - [oemlock/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/oemlock/)\n - [power/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/power/)\n - [prebuilt_hashes/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/prebuilt_hashes/)\n - [radio/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/radio/)\n - [renderscript/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/renderscript/)\n - [secure_element/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/secure_element/)\n - [sensors/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/sensors/)\n - [soundtrigger/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/soundtrigger/)\n - [tests/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/tests/)\n - [tetheroffload/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/tetheroffload/)\n - [thermal/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/thermal/)\n - [tv/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/tv/)\n - [usb/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/usb/)\n - [vibrator/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/vibrator/)\n - [vr/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/vr/)\n - [weaver/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/weaver/)\n - [wifi/](https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/android16-release/wifi/)\n\n/frameworks/hardware/interfaces\n-------------------------------\n\n- [/frameworks/hardware/interfaces/](https://android.googlesource.com/platform/frameworks/hardware/interfaces/+/android16-release)\n - [displayservice/](https://android.googlesource.com/platform/frameworks/hardware/interfaces/+/android16-release/displayservice/)\n - [schedulerservice/](https://android.googlesource.com/platform/frameworks/hardware/interfaces/+/android16-release/schedulerservice/)\n - [sensorservice/](https://android.googlesource.com/platform/frameworks/hardware/interfaces/+/android16-release/sensorservice/)\n - [vr/](https://android.googlesource.com/platform/frameworks/hardware/interfaces/+/android16-release/vr/)\n\n/system/hardware/interfaces\n---------------------------\n\n- [/system/hardware/interfaces/](https://android.googlesource.com/platform/system/hardware/interfaces/+/android16-release)\n - [ashmem/](https://android.googlesource.com/platform/system/hardware/interfaces/+/android16-release/ashmem/)\n - [net/](https://android.googlesource.com/platform/system/hardware/interfaces/+/android16-release/net/)\n - [suspend/](https://android.googlesource.com/platform/system/hardware/interfaces/+/android16-release/suspend/)\n - [wifi/](https://android.googlesource.com/platform/system/hardware/interfaces/+/android16-release/wifi/)\n\n/system/libhidl/transport\n-------------------------\n\n- [/system/libhidl/transport/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/)\n - [allocator/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/allocator/)\n - [base/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/base/)\n - [current.txt](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/current.txt)\n - [include/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/include/)\n - [manager/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/manager/)\n - [memory/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/memory/)\n - [safe_union/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/safe_union/)\n - [token/](https://android.googlesource.com/platform/system/libhidl/+/android16-release/transport/token/)"]]