Czym jest Vibration API?

Vibration API (navigator.vibrate()) to standard przeglądarki, który pozwala stronom internetowym wyzwalać wbudowany silnik wibracji w smartfonach i niektórych tabletach. Akceptuje pojedynczą długość trwania w milisekundach lub naprzemienną tablicę czasów wibracji/pauzy — zwaną wzorem wibracji. API jest obsługiwane w większości przeglądarek Android; iOS nie udostępnia wibracji stronom internetowym ze względu na ograniczenia platformy.

Wzory wibracji są opisywane jako tablice, w których wartości o indeksach nieparzystych reprezentują czasy wibracji, a wartości o indeksach parzystych reprezentują czasy pauzy. Na przykład [200, 100, 200] oznacza wibrację 200 ms, pauzę 100 ms, wibrację 200 ms. Wywołanie navigator.vibrate(0) lub navigator.vibrate([]) natychmiast anuluje wszelkie trwające wibracje.

Opis narzędzia

To narzędzie pozwala sprawdzić, czy Twoje urządzenie obsługuje Vibration API i eksperymentować ze wzorami wibracji bezpośrednio w przeglądarce. Możesz wyzwolić pojedynczy impuls z konfigurowalnym czasem trwania, wprowadzić w pełni niestandardowy wzór oddzielony przecinkami lub wybrać jeden z wbudowanych presetów, takich jak SOS, bicie serca i impulsy podwójne/potrójne. Dziennik zdarzeń rejestruje każdą próbę wibracji ze znacznikiem czasu i dokładnie użytym wzorem, dzięki czemu możesz porównać wyniki na różnych urządzeniach i przeglądarkach.

Przykłady

Wejście wzoru Co się dzieje
300 Pojedynczy impuls trwający 300 ms
200,100,200 Wibracja 200 ms → pauza 100 ms → wibracja 200 ms
150,100,150,100,150 Trzy krótkie impulsy ze 100 ms przerwami między nimi
0 Anuluje wszelkie trwające wibracje

Funkcje

  • Wykrywa, czy urządzenie i przeglądarka obsługują Vibration API i wyświetla status przy ładowaniu
  • Regulowana długość pojedynczego impulsu od 10 ms do 5000 ms za pomocą suwaka
  • Wejście niestandardowego wzoru akceptuje dowolną sekwencję czasów wibracji i pauzy oddzieloną przecinkami
  • Sześć gotowych presetów: Short Pulse, Long Pulse, Double Pulse, Triple Pulse, SOS Pattern i Heartbeat
  • Dziennik zdarzeń ze znacznikami czasu pokazujący każdy wyzwolony wzór i czy został zaakceptowany czy odrzucony przez przeglądarkę

Przypadki użycia

  • Tworzenie aplikacji mobilnych: Sprawdź, czy sprzężenie zwrotne haptyczne zaimplementowane za pomocą Vibration API faktycznie działa na urządzeniu docelowym przed wydaniem funkcji.
  • Testowanie urządzeń QA: Szybko potwierdź, że silnik wibracji działa na nowo otrzymanym lub naprawionym smartfonie bez instalowania aplikacji natywnej.
  • Prototypowanie wzorów: Iteruj niestandardowe sekwencje wibracji (alerty powiadomień, sprzężenie zwrotne gier, wskazówki dostępności), testując je na żywo w przeglądarce.

Jak to działa

Narzędzie wywołuje navigator.vibrate(pattern) z podaną wartością. Przeglądarka zwraca true, jeśli wywołanie zostało zaakceptowane, i false, jeśli zostało odrzucone — na przykład dlatego, że dokument nie ma fokusa lub urządzenie nie obsługuje API. Oba wyniki są rejestrowane w dzienniku zdarzeń. Całe przetwarzanie odbywa się całkowicie na urządzeniu; żadne dane nie są wysyłane na żaden serwer.

Ograniczenia

  • iOS (Safari, Chrome na iOS): Apple nie udostępnia navigator.vibrate() na iOS, więc API jest zawsze zgłaszane jako nieobsługiwane na iPhone'ach i iPad'ach.
  • Przeglądarki stacjonarne: Komputery stacjonarne generalnie nie mają silnika wibracji, więc nawet gdy API jest dostępne, nie ma fizycznego efektu.
  • Karty w tle: Niektóre przeglądarki dyskretnie odrzucają wywołania wibracji, gdy strona nie jest na pierwszym planie.
  • Maksymalny czas trwania: Poszczególne segmenty wibracji są ograniczone przez przeglądarkę (zwykle około 10 sekund); bardzo duże wartości mogą być dyskretnie obcięte.