19.3 Menú de accesibilidad, acciones personalizadas y retroalimentación háptica
Menú de accesibilidad
El Menú de accesibilidad facilita el control del dispositivo mediante iconos grandes y gestos simples. A través de él se puede acceder a funciones comunes sin navegar por varias pantallas.
- Activación:
- Ajustes > Accesibilidad > Menú de accesibilidad.
- Habilitar el interruptor y conceder permisos de superposición.
- Funciones disponibles:
- Volumen, bloqueo de pantalla, capturas, notificaciones.
- Control de gestos: deslizar, doble toque y presión prolongada.
- Navegación:
- Icono flotante: arrástralo a cualquier parte de la pantalla.
- Personaliza atajos rápidos en Ajustes del menú.
Acciones personalizadas
Además de las acciones del sistema, Android permite definir comandos propios que invoquen tareas específicas.
- Configuración:
- Ajustes > Accesibilidad > Servicio personalizado (o usa una AccessibilityService).
- En “Acciones personalizadas”, pulsa “Añadir acción”.
- Asignación de gestos:
- Doble toque o deslizamiento en pantalla para lanzar la acción.
- Combinar con ubicaciones contextuales (por ejemplo, solo en apps concretas).
- Programación (opcional):
- Extiende
AccessibilityService
y registra unaAccessibilityAction
. - Ejemplo en Kotlin:
override fun onServiceConnected() {
val action = AccessibilityNodeInfo.AccessibilityAction(
AccessibilityNodeInfo.ACTION_CLICK, Mi acción)
serviceInfo = serviceInfo.apply {
accessibilityFlags = AccessibilityServiceInfo.FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY
capabilities = AccessibilityServiceInfo.CAPABILITY_CAN_PERFORM_GESTURE
}
}
- Extiende
Retroalimentación háptica
La retroalimentación háptica aporta vibraciones contextuales para confirmar interacciones, aumentar la accesibilidad y mejorar la experiencia de usuario.
- Tipos de feedback:
- TOQUE_CORTO: Confirmación breve.
- TOQUE_LARGO: Indica selección prolongada.
- ALERTA: Vibración intensa para notificaciones críticas.
- Configuración de sistema:
- Ajustes > Sonido y vibración > Intensidad de vibración.
- Activar o desactivar feedback háptico global.
- Implementación en código:
- Usar
view.performHapticFeedback()
con constantes deHapticFeedbackConstants
. - Ejemplo en Java:
button.setOnClickListener(v -> {
v.performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY)
// lógica adicional
})
- Usar
Tabla de constantes hápticas
Constante | Descripción | Intensidad |
VIRTUAL_KEY | Toque breve en teclado virtual | Baja |
LONG_PRESS | Pulsación prolongada | Media |
KEYBOARD_TAP | Retroalimentación al teclear | Baja |
HEAVY_CLICK | Toque de alta intensidad | Alta |
Profundizando sobre: 19.3 Menú de accesibilidad, acciones personalizadas y retroalimentación háptica
- Libros
- Android Accessibility: Overcome Barriers for Challenged Users – Ricardo Lecheta. Capítulos dedicados a menús accesibles y feedback háptico.
- Android Programming: The Big Nerd Ranch Guide – Bill Phillips y Chris Stewart. Sección sobre accesibilidad y experiencia táctil.
- Documentación oficial
- Ejemplos y proyectos abiertos
- Codelabs y cursos
- Videos y charlas
- Blogs y artículos
Deja una respuesta