Ajouter des commentaires multisensoriels aux applications Android

Cette page explique comment enrichir les applications avec un retour audio-haptique en suivant les consignes du système de conception multisensoriel (MSDS). keywords_public: > haptique, vibration, audio, retour, Android, UI, UX, conception, multisensoriel, msds

Les applications exécutées sur des appareils Android peuvent fournir un retour audio-haptique multisensoriel conforme au système de conception multisensoriel (MSDS), une bibliothèque de composants tokenisés pour un son et une haptique cohérents.

Pourquoi utiliser MSDS ?

MSDS est un système de conception centralisé qui améliore les retours audio et haptiques. Avec MSDS, vous n'avez pas besoin de concevoir, de sélectionner ni de créer vos propres retours tactiles ou auditifs pour les interactions utilisateur courantes.

De plus, MSDS fonctionne de manière cohérente sur tous les appareils, en synchronisant l'audio et les retours tactiles de manière optimale en fonction des capacités de l'appareil.

Quand utiliser MSDS ?

MSDS fournit des commentaires sur les interactions courantes des utilisateurs actifs. Ce retour se déclenche en réponse à une action de l'utilisateur qui entraîne un effet dans le système ou l'application. Il se divise en deux catégories :

  • Retour d'information sur les gestes : confirme la manipulation physique en temps réel des éléments de l'interface utilisateur à partir des gestes directs de l'utilisateur.

  • Commentaires sémantiques : confirment les changements d'état, les sélections ou la progression de l'utilisateur en temps réel.

Comment utiliser les fiches de données de sécurité ?

L'API MultisensoryManager est le point d'entrée pour fournir des commentaires sur les fiches de données de sécurité. Vous pouvez lire les commentaires tokenisés à l'aide de la méthode playToken().

Pour afficher les jetons disponibles, lisez les constantes d'entier public de MultisensoryManager. Pour utiliser le gestionnaire dans votre application, interrogez-le en tant que service système et lisez les jetons :

@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)
            }
        }
    )
}

Vous pouvez également conserver une référence à MultisensoryManager dans un ViewModel pour déclencher la lecture MSDS en réponse à des appels de méthode ou à des changements d'état de l'UI.

Recommandations

Les commentaires MSDS sont généralement diffusés en même temps que les animations ou les gestes de l'utilisateur, car ils sont déclenchés par les interactions actives de l'utilisateur. Lisez les commentaires au moment opportun afin que les éléments visuels, audio et haptiques se déclenchent le plus près possible les uns des autres.

Selon la structure de votre application, cette recommandation peut entraîner des appels de lecture dans les rappels de composables d'UI (comme l'exemple Switch précédent), des modifications de l'State ou de l'StateFlow de l'UI, des images d'animation ou des réponses de l'UI à une saisie directe de l'utilisateur.

Dans tous les cas, il est généralement recommandé de fournir des commentaires une fois que l'utilisateur peut percevoir les conséquences de son action dans le système.