Die in Schritt 2 der Haptik-Checkliste eingeführte HAL-API-Konstantenzuordnung basiert auf den dringend empfohlenen UX-Designprinzipien. Die UX-Designprinzipien definieren die Grundlage dafür, wie, wann und was bei der Verwendung von Android-Haptik-APIs zu verwenden ist. Siehe Advanced Haptics: The When, What, and How of New Haptic APIs , um mehr über diese grundlegenden Prinzipien zu erfahren.
Abbildung 1. HAL-API-Konstantenzuordnung: Diskretes Modell
Haptische Effekte auswählen
Durch haptische Stärke ( VibrationEffect
)
EFFECT_CLICK
ist der beste Ausgangspunkt, um Ihre gewünschte haptische Stärke ( VibrationEffect
) zu bestimmen: Es ist der Median zwischen der "leichten" Haptik von EFFECT_TICK
und der "schweren" Haptik von EFFECT_HEAVY_CLICK
. Indem Sie mit EFFECT_CLICK
beginnen, können Sie die konzeptionelle Energie erhöhen oder verringern, indem Sie mit EFFECT_HEAVY_CLICK
Stärke hinzufügen oder mit EFFECT_TICK
die Stärke verringern. Denken Sie daran, EFFECT_DOUBLE_CLICK
die höchste konzeptionelle Energie liefert, weil es wiederholt wird.
Abbildung 2. Einstellungen für die haptische Stärke
Durch Eingabeereignisse und UI-Elemente ( HapticFeedbackConstants
)
Wenn Ihr Ziel mit bestimmten Eingabeereignissen (z. B. langes Drücken oder Wischen) oder UI-Elementen (z. B. Tastatur) verknüpft ist, finden Sie vordefinierte haptische Konstanten in HapticFeedbackConstants
. Der Name jeder Konstante bezieht sich auf bestimmte Anwendungsfälle wie KEYBOARD_PRESS
oder LONG_PRESS
.
Simulieren von realen Tastendruckereignissen
Die berührungshaptische Rückmeldung von Eingabeereignissen (virtuelle Softbuttons) kann Tastendrücke unter Verwendung physikalischer Einheiten (wie etwa mechanischer Hardbuttons) simulieren.
Eingabeereignis: Paarweiser Interaktionsfluss
Das Click-Ereignis soll das Verhalten einer mechanischen Taste simulieren, die gedrückt und dann losgelassen wird . Die empfundene Energie des mechanischen Impulses beim Drücken einer Taste ist höher als beim Loslassen der Taste. Daher ist das haptische Feedback für das Drücken von Tasten stärker als das haptische Feedback für das Loslassen von Tasten.
Abbildung 3. Haptische Effekte durch binäre Eingabeereignisse
Haptische Stärke: Die Erschwinglichkeit des Tastendrucks
Eingabeereignisse mit kürzerem und leichterem Engagement sind mit einer leichteren Haptik verbunden. Eingabeereignisse mit längerem und tieferem Engagement sind mit einer stärkeren Haptik verbunden.
Abbildung 4. Haptische Effekte nach Erschwinglichkeit
Simulieren einer virtuellen Textur in einem Gesteneingabeereignis
Gestenbasierte Eingaben (wie Scrubbing oder Scrollen) können mit virtuellen haptischen Texturen ausgerichtet werden, während sich der Finger auf dem Bildschirm bewegt, zusammen mit visuellen UIs, um beispielsweise wiederholtes haptisches Feedback zu erzeugen, während sich ein Finger rund um die Uhr bewegt UI mit virtuellem Häkchen UI-Elemente.
Effekte für virtuelle haptische Texturen sollen wiederholt werden. Dadurch ist die empfundene Energie oft höher als die Amplitude (wenn der Effekt ohne Wiederholung oder nur einmal aufgerufen wird). Aus diesem Grund müssen haptische Konstanten, die für virtuelle haptische Texturen (wie CLOCK_TICK
oder TEXT_HANDLE_MOVE
) entworfen wurden, subtil sein, um durch wiederholte Hinweise das Gefühl von Bewegung zu vermitteln.
Abbildung 5. Haptische Effekte zur Simulation einer virtuellen Textur
Gefühle inklusive
Um positive oder negative Gefühle in haptische Effekte einzubeziehen, wenden Sie eine stärkere Empfindung auf negative Gefühle an, um die Aufmerksamkeit des Benutzers zu erregen.
Abbildung 6. Haptische Effekte mit Sentiment
Vermeidung von hörbaren Geräuschen durch lange Vibration
Um hörbare Geräusche durch lange Vibrationen für eine aufmerksamkeitsstarke Haptik zu vermeiden, beschleunigen Sie das Muster sanft, um einen Ramp-Up-Effekt zu erzeugen. Verwenden Sie dazu createWaveform(long[] timings, int[] amplitudes, int repeat)
.
Abbildung 7. Langer Vibrationsrampeneffekt