Как добавить мультисенсорную обратную связь в приложения для Android

На этой странице описано, как добавить в приложения аудиовибрационный отклик в соответствии с рекомендациями по мультисенсорной системе проектирования (MSDS). keywords_public: > тактильная обратная связь, вибрация, аудио, отклик, Android, интерфейс, UX, дизайн, мультисенсорный, msds

Приложения, работающие на устройствах Android, могут обеспечивать мультисенсорный аудиовиброотклик, соответствующий Multisensory Design System (MSDS) – библиотеке токенизированных компонентов для согласованного аудио и виброотклика.

Зачем использовать MSDS?

MSDS – это централизованная система проектирования, которая позволяет улучшить виброотклик и звуковую обратную связь. С MSDS вам не нужно разрабатывать, выбирать или создавать собственную тактильную или звуковую обратную связь для обычных взаимодействий с пользователем.

Кроме того, MSDS работает на разных устройствах, синхронизируя аудио и тактильные сигналы в зависимости от возможностей устройства.

Когда следует использовать MSDS?

MSDS предоставляет обратную связь по распространенным взаимодействиям активных пользователей. Такая обратная связь срабатывает в ответ на действие пользователя, которое вызывает эффект в системе или приложении, и делится на две категории:

  • Отклик на жесты. Подтверждает физическое взаимодействие с элементами интерфейса в реальном времени.

  • Семантическая обратная связь. Подтверждает изменения состояния, выбор или прогресс пользователя в реальном времени.

Как использовать паспорт безопасности химической продукции?

API MultisensoryManager – это точка входа для отправки отзывов о паспортах безопасности. Вы можете воспроизвести токенизированный отзыв с помощью метода playToken().

Чтобы посмотреть доступные токены, прочитайте общедоступные целочисленные константы MultisensoryManager. Чтобы использовать менеджер в приложении, запросите его как системный сервис и воспроизведите токены:

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

Вы также можете сохранить ссылку на MultisensoryManager в ViewModel, чтобы запускать воспроизведение MSDS в ответ на вызовы методов или изменения состояния пользовательского интерфейса.

Рекомендации

Отклик MSDS обычно воспроизводится вместе с анимацией или жестами пользователя, поскольку он запускается при активном взаимодействии с пользователем. Воспроизводите отклик в подходящее время, чтобы визуальные, звуковые и тактильные сигналы срабатывали как можно ближе друг к другу.

В зависимости от структуры приложения эта рекомендация может привести к вызовам воспроизведения внутри обратных вызовов composable-функций интерфейса (как в примере с Switch выше), изменениям в State или StateFlow интерфейса, кадрам анимации или реакциям интерфейса на прямой ввод пользователя.

В любом случае общая рекомендация – предоставлять обратную связь, как только пользователь сможет увидеть последствия своего действия в системе.