Оценка аппаратного обеспечения позволяет получить количественные характеристики трех целевых тактильных эффектов, выбранных с помощью распространенных методов вызова тактильных эффектов. По завершении оценки данные об эффективности каждого устройства для каждого целевого тактильного эффекта можно применить к карте эффективности, чтобы сделать выводы.
На карте производительности показаны результаты оценки аппаратного обеспечения нескольких современных устройств Android. Цель – оценить целевое устройство с помощью контекстно-относительного сравнения (а не просто определить, соответствует ли оно требованиям). Конкретные вопросы, которые можно задать: Учитывая ценовую категорию и тип привода моего телефона, как его производительность соотносится с производительностью телефонов конкурентов? Соответствуют ли результаты моим ожиданиям? Если нет, что нужно улучшить?
Рисунок 1. Обзор процесса оценки аппаратного обеспечения тактильной обратной связи
В ходе оценки рассматриваются результаты трех методов в рамках платформы тактильных ощущений Android.
Эффект 1. Предопределенные короткие тактильные константы
Эта константа является базовым эффектом или общим знаменателем в сопоставлении HAL-API, приведенном в разделе Сопоставление констант между HAL и API.
Она сопоставлена с наиболее часто используемым эффектом HapticFeedbackConstants.KEYBOARD_PRESS.
Оценка этого эффекта помогает определить готовность целевого устройства к четкой тактильной обратной связи.
Эффект 2. Короткий настраиваемый тактильный эффект
VibrationEffect.createOneShot(20,255)
Для коротких импульсов рекомендуется использовать максимальный порог в 20 мс. Не рекомендуется использовать одиночные импульсы длиннее 20 мс, поскольку они воспринимаются как жужжащая вибрация.
Рисунок 2. Короткий настраиваемый тактильный эффект
Эффект 3: длинный пользовательский тактильный эффект с изменением амплитуды
VibrationEffect.createWaveform(timings[], amplitudes[], int repeat)
Возможность создавать различные амплитуды для специальных тактильных эффектов – один из показателей, по которым можно оценить, поддерживает ли устройство расширенные тактильные эффекты.
Рекомендуемые значения timings [ ] и amplitudes [ ] – {500, 500} и {128, 255} соответственно. На графике показана тенденция к увеличению амплитуды с 50 до 100 % при частоте дискретизации 500 мс.
Рисунок 3. Длинный пользовательский тактильный эффект с изменением амплитуды
Чтобы быстро проверить, поддерживается ли на устройстве управление амплитудой для эффекта 3, попробуйте Vibrator.hasAmplitudeControl().
Результат должен быть true, чтобы выполнить VibrationEffect.createWaveform с нужной амплитудой.