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.
Haptics
Stay organized with collections
Save and categorize content based on your preferences.
The Android haptics subsystem refers to hardware and software features that
contribute to the creation of stimuli through the sense of touch. Creating
haptic effects requires a high degree of hardware dependencies, while
perceiving haptic stimuli requires a high degree of user dependencies and
preferences. This dichotomy challenges device manufacturers to develop and
maximize haptic user benefits in the Android ecosystem.
Implementing haptic effects correctly requires up-to-date, compatible hardware.
For users to properly perceive haptic stimuli, specific preferences must be
tweaked to create the desired effects. Manufacturers must satisfy both
requirements to properly implement haptics on Android.
The following guides describe the compliance instructions for device
manufacturers and app developers, and provides clear guidance on the best use
of the Android haptics APIs:
To learn more about compatibility in general, read the Android
Compatibility Definition Document.
To learn more about using haptics in Android, read the Android
Developer Documentation.
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-12 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-12 UTC."],[],[],null,["# Haptics\n\nThe Android haptics subsystem refers to hardware and software features that\ncontribute to the creation of stimuli through the sense of touch. *Creating*\nhaptic effects requires a high degree of hardware dependencies, while\n*perceiving* haptic stimuli requires a high degree of user dependencies and\npreferences. This dichotomy challenges device manufacturers to develop and\nmaximize haptic user benefits in the Android ecosystem.\n\nImplementing haptic effects correctly requires up-to-date, compatible hardware.\nFor users to properly perceive haptic stimuli, specific preferences must be\ntweaked to create the desired effects. Manufacturers must satisfy both\nrequirements to properly implement haptics on Android.\n\nThe following guides describe the compliance instructions for device\nmanufacturers and app developers, and provides clear guidance on the best use\nof the Android haptics APIs:\n\n- [**A step-by-step checklist detailing haptic SW and HW compliance**](/docs/core/interaction/haptics/haptics-implement)\n\n The checklist walks\n you through the key elements of the hardware configuration process.\n- [**A foundation for haptic framework**](/docs/core/interaction/haptics/haptics-ux-foundation)\n\n This lists the set of UX principles that Android haptic improvements are\n driven by.\n- [**An in-depth look at UX and design principles**](/docs/core/interaction/haptics/haptics-ux-design)\n\n These principles illustrate the importance of hardware compliance in\n improving the haptics UX for Android end users.\n- [**Assess hardware**](/docs/core/interaction/haptics/hardware)\n\n Learn how to assess the haptic effects implementation with the necessary\n test equipment and apply your findings to the performance map to draw\n conclusions about the performance of your device under test.\n\nTo learn more about compatibility in general, read the [Android\nCompatibility Definition Document](/docs/compatibility/11/android-11-cdd).\n\nTo learn more about using haptics in Android, read the [Android\nDeveloper Documentation](https://developer.android.com/develop/ui/views/haptics)."]]