Z tego dokumentu dowiesz się, jak działa haptyka na urządzeniach z Androidem. Opisujemy w nim przypadki użycia, klasyfikacje efektów haptycznych (wyraźne, bogate i wibrujące) oraz podstawowe wytyczne projektowe dla deweloperów aplikacji. keywords_public: > haptyka, wibracje, informacje zwrotne, Android, interfejs użytkownika, UX, projektowanie, zasady, wytyczne, HapticFeedbackConstants
W przypadku reakcji haptycznej na urządzeniach mobilnych mniej znaczy więcej. Zbyt silne wibracje mogą być irytujące, a nawet powodować drętwienie dłoni, ponieważ urządzenie jest zwykle trzymane w ręce i użytkownik w pełni skupia się na nim. Może to też odwracać uwagę użytkownika od zamierzonego zadania, co może spowodować, że szybko wyłączy on wszystkie wibracje. Dobrze zaprojektowane wibracje zapewniają jednak cenne informacje sensoryczne, które zwiększają zaangażowanie użytkowników w korzystanie z urządzenia.
Na tej stronie znajdziesz przypadki użycia haptyki, klasyfikacje efektów haptycznych oraz podstawowe wytyczne dotyczące aplikacji.
Przypadki użycia dodawania haptyki do aplikacji
Oto kilka powodów, dla których warto włączyć w aplikacji haptykę.
Aby powiadomić użytkownika o wydarzeniu, które wymaga jego uwagi. Może to być na przykład połączenie telefoniczne lub SMS albo zbliżające się spotkanie w kalendarzu.
Potwierdzenie zmiany stanu urządzenia po działaniu użytkownika. Przykłady to reakcja na kliknięcie przycisku, odblokowanie telefonu, potwierdzenie lub odrzucenie odcisku palca czy aktywacja aparatu.
Zaskoczyć użytkownika efektami. Takie efekty mogą ulepszać bieżące działanie użytkownika lub emulować interakcję fizyczną. Przykłady to reakcja na przewijanie, zatrzaśnięcie suwaka lub efekty haptyczne zsynchronizowane z animacjami, dźwiękami, filmami i grami.
Klasyfikacje reakcji haptycznych
Zasady haptyczne przedstawione w tym dokumencie opierają się na wyraźnych, bogatych i wibrujących sygnałach haptycznych.
Wyczyść haptykę
Wyraźne wibracje to ostre i czyste wibracje związane z dyskretnym zdarzeniem, takim jak naciśnięcie przycisku. Efekty te często mają na celu imitowanie odpowiednich działań mechanicznych w świecie rzeczywistym, takich jak te odczuwane podczas naciskania fizycznego przycisku.
Android ma wstępnie zdefiniowane wyraźne efekty haptyczne w VibrationEffect. Ogólnie jednak aplikacje powinny używać stałych zorientowanych na działanie z HapticFeedbackConstants, aby zapewnić spójność efektu i działania na urządzeniu.
Kolejną zaletą stałych zorientowanych na działanie jest to, że platforma może zapewnić zachowanie rezerwowe, jeśli bardziej złożony efekt nie jest obsługiwany przez urządzenie użytkownika.
W miarę rozszerzania przypadków użycia wibracji dotykowe mogą czasami wydawać się proste i monotonne. W takim przypadku postaw na bogate, bardziej wyraziste efekty dotykowe.
Rozbudowane reakcje haptyczne
Zaawansowane wibracje wymagają zwykle siłowników haptycznych o szerszym paśmie częstotliwości, co zapewnia większą ekspresję i zakres. Bogate efekty haptyczne można też uzyskać, sekwencjonując wyraźne elementy pierwotne o różnych amplitudach i interwałach.
Przykłady zaawansowanych efektów dotykowych:
- uczucie „trzepotania”, podobne do trzepotania skrzydeł motyla na opuszku palca;
- Tekstura powierzchni odczuwana podczas przesuwania po niej palcem.
- uczucie chwiejności i niestabilności lub ciężkości i wibracji;
Reakcje haptyczne
Wibracje o wysokiej częstotliwości charakteryzują się głośnymi, ostrymi i przenikliwymi wibracjami, które pozostawiają efekt, np. mrowienie, nawet po zakończeniu wibracji. Ma też tendencję do wywoływania efektu dzwonienia, który przypomina pogłos, zanim wibracje całkowicie ustaną.
Przykłady wibracji:
- Obsługa młota pneumatycznego
- Jazda motocyklem
- Na urządzeniach mobilnych długie, wibrujące dzwonienie po naciśnięciu klawisza
W przypadku starszych urządzeń mobilnych, takich jak pagery i telefony komórkowe, telefony z niskiej półki z siłownikami haptycznymi lub sterownikami o niskiej wydajności zwykle generowały długie wibracje o charakterystycznym brzęczeniu, aby sygnalizować powiadomienia.
Wytyczne dotyczące projektowania reakcji haptycznych
Ogólnie wskazówki dotyczące projektowania można podsumować tak:
- Wybieraj bogate i wyraźne wibracje zamiast wibracji przypominających brzęczenie.
- Zachowaj spójność zarówno z systemem, jak i z projektem aplikacji.
- Zwróć uwagę na częstotliwość używania i ważność.
Nadawanie priorytetu predefiniowanym stałym wartościom i efektom haptycznym
Jeśli Twoje działanie jest objęte wstępnie zdefiniowanym działaniem w HapticFeedbackConstants, użyj tej stałej. Zapewnia to spójną interakcję użytkownika, co jest szczególnie ważne z punktu widzenia ułatwień dostępu.
Jeśli tworzysz własny efekt, rozważ użycie VibrationEffect gotowych efektów i VibrationEffect.Composition elementów podstawowych. Zapewniają one bardziej spójną jakość na urządzeniach, które je obsługują.
Korelacja ważności i częstotliwości zdarzeń z siłą sygnału
Efekty haptyczne nie powinny przytłaczać użytkownika ani wydawać się niepotrzebne.
Efekty dotykowe stosowane w przypadku bardzo częstych zdarzeń, takich jak przewijanie lub przesuwanie uchwytu tekstu, powinny być bardzo subtelne, aby zapewnić przyjemne ogólne wrażenia.
Ważniejsze zdarzenia, takie jak odświeżenie strony lub przesłanie formularza, powinny mieć większe znaczenie niż np. zmiana ustawienia lub przewijanie listy.
Połącz oba te pojęcia, aby tworzyć efekty, które stają się silniejsze, gdy interakcja osiąga cel. Na przykład stopniowo zwiększaj amplitudę sekwencji kliknięć podczas przeciągania, upuszczania lub przyciągania.
Zadbaj o spójność
Zapewnij spójność w aplikacji w zakresie stosowania haptyki. Jeśli określona interakcja, np. przesłanie formularza lub nawigacja w aplikacji, ma wibracje, upewnij się, że ten sam efekt jest stosowany w przypadku wszystkich podobnych interakcji. Pomaga to użytkownikom powiązać znaczenie z określoną reakcją haptyczną.
Zachowaj też spójność z systemem Android, używając tego samego HapticFeedbackConstants w przypadku dobrze zdefiniowanych interakcji, takich jak selektory czasu czy klawiatury wirtualne.
Projektowanie treści wizualnych i dźwiękowych z wykorzystaniem haptyki
Wibracje powinny być częścią ogólnych wrażeń użytkownika.
Zdecydowanie zalecamy wspólne projektowanie efektów wizualnych, dźwiękowych i dotykowych. Zadbaj o to, aby była harmonijna lub zgodna z animacjami wizualnymi i wzorcami dźwiękowymi. Dane wizualne i dźwiękowe mogą wzmacniać odczuwane reakcje haptyczne, a dobrze zaprojektowany efekt haptyczny może nadawać efektom wizualnym i dźwiękowym fizyczność.
Z kolei reakcja haptyczna, która jest odtwarzana niesynchronicznie lub wydaje się niespójna z efektami wizualnymi i dźwiękowymi, może być dla użytkownika nieco niepokojąca. W niektórych przypadkach użytkownik może uznać, że siłownik haptyczny jest uszkodzony.
Unikaj starszych jednorazowych wibracji w przypadku reakcji haptycznych
Unikaj używania starszych wibracji jednorazowych, takich jak te zdefiniowane przez VibrationEffect.createOneShot lub wykonywane za pomocą interfejsów API Vibrator.vibrate(long) i Vibrator.vibrate(long[], int).
Te wibracje mogą być odczuwalne jako brzęczenie, jeśli trwają długo po zakończeniu sygnału wejściowego, zwłaszcza na urządzeniach z siłownikiem lub sterownikiem haptycznym o niskiej wydajności.
Dobry sygnał reakcji haptycznej kliknięcia klawisza powinien trwać od 10 do 20 milisekund. Jednak siłownik może nadal dzwonić przez kolejne 20–50 milisekund po zakończeniu 20-milisekundowego sygnału wejściowego. Dlatego w przypadku tego typu informacji zwrotnych najlepiej unikać pojedynczych wibracji.