A partir del 27 de marzo de 2025, te recomendamos que uses android-latest-release
en lugar de aosp-main
para compilar y contribuir a AOSP. Para obtener más información, consulta Cambios en AOSP.
Cómo implementar la tecnología táctil
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Por lo general, los fabricantes de dispositivos se consideran los propietarios de los recursos privados que se crean para cada dispositivo. Por lo tanto, sus esfuerzos de ingeniería suelen enfocarse en una base por dispositivo; se dedica poco o ningún esfuerzo a la coherencia de otros dispositivos del ecosistema.
En cambio, los desarrolladores se esfuerzan por compilar apps que funcionen en todos los teléfonos Android del ecosistema, independientemente de las especificaciones técnicas de cada dispositivo.
Esta diferencia en el enfoque puede causar un problema de fragmentación, por ejemplo, las capacidades de hardware de ciertos teléfonos no coinciden con las expectativas establecidas por los desarrolladores de apps. Por lo tanto, si las APIs de la tecnología táctil funcionan en algunos teléfonos Android, pero no en otros, el resultado es un ecosistema incoherente. Por este motivo, la configuración de hardware juega un papel fundamental para garantizar que los fabricantes puedan implementar las APIs de la tecnología táctil de Android en todos los dispositivos.
En esta página, se proporciona una lista de tareas paso a paso para configurar la conformidad de hardware para el mejor uso de las APIs de la tecnología táctil de Android.
En la siguiente imagen, se ilustra la creación de conocimiento común entre los desarrolladores y los fabricantes de dispositivos, que es un paso fundamental para crear un ecosistema cohesivo:
Figura 1: Compartir conocimientos entre los fabricantes y desarrolladores de dispositivos
Lista de tareas para la implementación de la tecnología táctil
Implementa constantes
- Es una lista de constantes para implementar la tecnología táctil.
Implementa primitivas
- Orientación para la implementación de primitivas de composición de HAL
Asigna constantes entre HAL y la API
- Recomendaciones de asignación entre constantes de API públicas (llamadas marcadores de posición en el framework) y constantes de HAL, que implementan los marcadores de posición.
- Consulta Principios de diseño para guiar la asignación recomendada
para obtener más información sobre este proceso.
Implementa efectos de envolvente lineal por tramos (PWLE)
- Orientación para la implementación de envolventes de amplitud y frecuencia
Evalúa el hardware
- Instrucciones sobre los efectos táctiles de destino Usa estas instrucciones para realizar
verificaciones rápidas en el hardware.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-07-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-07-27 (UTC)"],[],[],null,["# Implement haptics\n\nDevice manufacturers are generally considered the owners of the private assets\ncreated for each device. As such, their engineering efforts are often focused on\na *per-device basis*; little to no effort goes to the consistency of other\ndevices in the ecosystem.\n\nIn direct contrast, developers strive to build apps that work on *all* Android\nphones in the ecosystem, regardless of each device's technical specifications.\nThis difference in approach can cause a fragmentation problem, for example, the\nhardware capabilities of certain phones don't match expectations set by the app\ndevelopers. So if the haptics APIs work on some Android phones but not others,\nthe result is an inconsistent ecosystem. This is why hardware configuration\nplays a critical role in ensuring that manufacturers can implement Android\nhaptics APIs on *every* device.\n\nThis page provides a step-by-step checklist to set up hardware compliance for\nthe best use of the Android haptics APIs.\n\nThe following figure illustrates building common knowledge between device\nmanufacturers and developers, which is a critical step in creating a cohesive\necosystem:\n\n**Figure 1.** Building knowledge between device manufacturers and developers\n\nHaptics implementation checklist\n--------------------------------\n\n1. [Implement constants](/docs/core/interaction/haptics/haptics-constants-primitives#implement-constants)\n\n - List of constants to implement haptics.\n2. [Implement primitives](/docs/core/interaction/haptics/haptics-constants-primitives#implement-primitives)\n\n - Implementation guidance for HAL composition primitives.\n3. [Map constants between HAL and API](/docs/core/interaction/haptics/haptics-map-constants)\n\n - Mapping recommendations between public API constants (named *placeholders* in the framework) and HAL constants, which implement the placeholders.\n - See [Design principles to guide the recommended mapping](/docs/core/interaction/haptics/haptics-ux-design) to learn more about this process.\n4. [Implement piecewise linear envelope (PWLE) effects](/docs/core/interaction/haptics/haptics-pwle)\n\n - Implementation guidance for amplitude and frequency envelopes.\n5. [Assess the hardware](/docs/core/interaction/haptics/haptics-assess-hardware)\n\n - Instructions on target haptic effects. Use these instructions to perform quick checks on your hardware.\n\n| **Note:** You can learn more about building common knowledge between device manufacturers and developers in [Advanced Haptics: The When, What, and How of\n| Haptic APIs](https://www.youtube.com/watch?v=00jRoEFnpk8)."]]