Cómo agregar comentarios multisensoriales a las apps para Android

En esta página, se describe cómo enriquecer las aplicaciones con comentarios de audio y táctiles siguiendo los lineamientos del sistema de diseño multisensorial (MSDS). keywords_public: > háptica, vibración, audio, comentarios, Android, IU, UX, diseño, multisensorial, msds

Las apps que se ejecutan en dispositivos con Android pueden ofrecer comentarios de audio y táctiles multisensoriales que cumplen con el sistema de diseño multisensorial (MSDS), una biblioteca de componentes con asignación de token para audio y tecnología táctil coherentes.

¿Por qué usar MSDS?

MSDS es un sistema de diseño centralizado para mejorar los comentarios de audio y táctiles. Con MSDS, no necesitas diseñar, seleccionar ni crear tus propios comentarios táctiles o auditivos para las interacciones comunes de los usuarios.

Además, MSDS funciona de manera coherente en todos los dispositivos, ya que sincroniza el audio y la tecnología táctil de forma óptima según las capacidades del dispositivo.

¿Cuándo deberías usar MSDS?

MSDS proporciona comentarios sobre las interacciones comunes de los usuarios activos. Estos comentarios se activan en respuesta a una acción del usuario que provoca un efecto en el sistema o la app, y se dividen en dos categorías:

  • Comentarios sobre gestos: Confirma la manipulación física en tiempo real de los elementos de la IU a partir de los gestos directos del usuario.

  • Comentarios semánticos: Confirman los cambios de estado, las selecciones o el progreso del usuario en tiempo real.

¿Cómo se usa la MSDS?

La API de MultisensoryManager es el punto de entrada para enviar comentarios sobre MSDS. Puedes reproducir comentarios con asignación de token con el método playToken().

Para ver los tokens disponibles, lee las constantes de números enteros públicos de MultisensoryManager. Para usar el administrador en tu app, consúltalo como un servicio del sistema y reproduce tokens:

@RequiresApi(Build.VERSION_CODES_FULL.CINNAMON_BUN_2)
@Composable
fun MultisensorySwitch() {
    val context = LocalContext.current
    val multisensoryManager =
        remember(context) { context.getSystemService(MultisensoryManager::class.java) }
    var checked by remember { mutableStateOf(false) }
    Switch(
        checked = checked,
        onCheckedChange = { isChecked ->
            checked = isChecked
            if (isChecked) {
                multisensoryManager?.playToken(MultisensoryManager.TOKEN_SWITCH_ON)
            } else {
                multisensoryManager?.playToken(MultisensoryManager.TOKEN_SWITCH_OFF)
            }
        }
    )
}

También puedes mantener una referencia a MultisensoryManager en un ViewModel para activar la reproducción de MSDS en respuesta a llamadas de método o cambios de estado de la IU.

Recomendaciones

Los comentarios de MSDS suelen reproducirse junto con animaciones o gestos del usuario porque se activan a partir de interacciones activas del usuario. Reproduce los comentarios en el momento adecuado para que los elementos visuales, el audio y la respuesta táctil se activen lo más cerca posible.

Según la estructura de tu app, esta recomendación puede generar llamadas de reproducción dentro de devoluciones de llamada de funciones de componibilidad de la IU (como el ejemplo anterior de Switch), cambios en State o StateFlow de la IU, fotogramas de animación o respuestas de la IU a la entrada directa del usuario.

En todos los casos, la recomendación general es proporcionar comentarios una vez que el usuario pueda percibir la consecuencia de su acción en el sistema.