Desain UX haptic

Pemetaan konstanta HAL-API yang diperkenalkan pada langkah 2 checklist haptic digerakkan oleh prinsip desain UX yang sangat direkomendasikan. Prinsip desain UX menentukan dasar-dasar cara, waktu, dan apa yang akan digunakan saat menggunakan API haptik Android. Lihat Haptik Lanjutan: Kapan, Apa, dan Cara Menggunakan API Haptik Baru untuk mempelajari lebih lanjut prinsip dasar ini.

Pemetaan Konstanta

Gambar 1. Pemetaan konstanta HAL-API: Model diskret

Memilih efek haptic

Menurut kekuatan haptic (VibrationEffect)

EFFECT_CLICK adalah tempat terbaik untuk memulai saat menentukan kekuatan haptik pilihan Anda (VibrationEffect): ini adalah median antara haptik "ringan" dari EFFECT_TICK dan haptik "berat" dari EFFECT_HEAVY_CLICK. Dengan memulai dengan EFFECT_CLICK, Anda dapat meningkatkan atau menurunkan energi konseptual dengan menambahkan kekuatan dengan EFFECT_HEAVY_CLICK, atau menurunkan kekuatan dengan EFFECT_TICK. Perlu diingat, EFFECT_DOUBLE_CLICK memberikan energi konseptual tertinggi karena diulang.

Kekuatan Haptic

Gambar 2. Setelan kekuatan haptic

Berdasarkan peristiwa input dan elemen UI (HapticFeedbackConstants)

Jika sasaran Anda dikaitkan dengan peristiwa input tertentu (seperti tekan lama, atau geser), atau elemen UI (seperti keyboard), temukan konstanta haptic yang telah ditentukan di HapticFeedbackConstants. Nama setiap konstanta merujuk pada kasus penggunaan tertentu seperti KEYBOARD_PRESS, atau LONG_PRESS.

Menyimulasikan peristiwa penekanan tombol di dunia nyata

Masukan haptic sentuh dari peristiwa input (tombol virtual) dapat menyimulasikan penekanan tombol menggunakan entitas fisik (seperti tombol keras mekanis).

Peristiwa input: Alur interaksi berpasangan

Peristiwa klik dirancang untuk menyimulasikan perilaku tombol mekanis, yang ditekan lalu dilepas. Energi yang dirasakan dari impuls mekanis dari penekanan tombol lebih tinggi daripada pelepasan tombol. Oleh karena itu, info via sentuhan untuk penekanan tombol lebih kuat daripada info via sentuhan untuk pelepasan tombol.

Haptik Tekan dan Lepaskan Peristiwa

Gambar 3. Efek haptic menurut peristiwa input biner

Kekuatan haptic: Kemampuan tekan tombol

Peristiwa input dengan interaksi yang lebih singkat dan lebih ringan dikaitkan dengan haptik yang lebih ringan. Peristiwa input dengan interaksi yang lebih lama dan lebih mendalam dikaitkan dengan haptik yang lebih kuat.

Haptik Affordance Tekan

Gambar 4. Efek haptic berdasarkan kemampuan

Menyimulasikan tekstur virtual dalam peristiwa input gestur

Input berbasis gestur (seperti menggeser atau men-scroll) dapat diselaraskan dengan tekstur haptik virtual saat jari bergerak di layar bersama dengan UI visual, misalnya, menghasilkan respons haptik berulang saat jari bergerak di sekitar UI jam dengan elemen UI tanda centang virtual.

Efek untuk tekstur haptic virtual dimaksudkan untuk diulang. Hal ini sering kali membuat energi yang dirasakan lebih tinggi daripada amplitudo (jika efek dipanggil tanpa pengulangan, atau hanya sekali). Oleh karena itu, konstanta haptic yang dirancang untuk tekstur haptik virtual (seperti CLOCK_TICK atau TEXT_HANDLE_MOVE) harus halus untuk memberikan perasaan gerakan melalui isyarat yang berulang.

Tekstur Virtual

Gambar 5. Efek haptic untuk menyimulasikan tekstur virtual

Menyertakan sentimen

Untuk menyertakan sentimen positif atau negatif dalam efek haptik, terapkan sensasi yang lebih kuat ke sentimen negatif untuk menarik perhatian pengguna.

Sentimen Haptic

Gambar 6. Efek haptik dengan sentimen

Menghindari suara bising yang terdengar dari getaran yang lama

Untuk menghindari derau yang terdengar dari getaran yang lama untuk haptik perhatian, percepat pola dengan lancar untuk menciptakan efek peningkatan. Lakukan hal ini dengan menggunakan createWaveform(long[] timings, int[] amplitudes, int repeat).

Getaran Panjang

Gambar 7. Efek peningkatan getaran panjang