¿Qué es la API de Vibración?

La API de Vibración (navigator.vibrate()) es un estándar de navegador que permite que las páginas web activen el motor de vibración físico integrado en smartphones y algunas tablets. Acepta una única duración en milisegundos o un array alternado de duraciones de vibración/pausa, llamado patrón de vibración. La API es compatible con la mayoría de navegadores Android; iOS no expone la vibración a las páginas web debido a restricciones de la plataforma.

Los patrones de vibración se describen como arrays donde los valores en índices impares representan duraciones de vibración y los valores en índices pares representan duraciones de pausa. Por ejemplo, [200, 100, 200] significa vibrar 200 ms, pausar 100 ms, vibrar 200 ms. Llamar a navigator.vibrate(0) o navigator.vibrate([]) cancela cualquier vibración en curso inmediatamente.

Descripción de la herramienta

Esta herramienta te permite probar si tu dispositivo es compatible con la API de Vibración y experimentar con patrones de vibración directamente en el navegador. Puedes activar un pulso único con una duración configurable, ingresar un patrón completamente personalizado separado por comas, o elegir entre presets integrados como SOS, latido del corazón y pulsos dobles/triples. Un registro de eventos registra cada intento de vibración con una marca de tiempo y el patrón exacto utilizado, para que puedas comparar resultados en diferentes dispositivos y navegadores.

Ejemplos

Entrada de patrón Qué sucede
300 Pulso único que dura 300 ms
200,100,200 Vibrar 200 ms → pausar 100 ms → vibrar 200 ms
150,100,150,100,150 Tres pulsos cortos con espacios de 100 ms entre ellos
0 Cancela cualquier vibración en curso

Características

  • Detecta si el dispositivo y el navegador son compatibles con la API de Vibración y muestra el estado al cargar
  • Duración de pulso único ajustable de 10 ms a 5000 ms mediante un deslizador
  • La entrada de patrón personalizado acepta cualquier secuencia separada por comas de duraciones de vibración y pausa
  • Seis presets listos para usar: Pulso Corto, Pulso Largo, Pulso Doble, Pulso Triple, Patrón SOS y Latido del Corazón
  • Registro de eventos con marcas de tiempo que muestra cada patrón activado y si fue aceptado o rechazado por el navegador

Casos de uso

  • Desarrollo web móvil: Verifica que la retroalimentación háptica implementada con la API de Vibración se active realmente en un dispositivo objetivo antes de lanzar la función.
  • Pruebas de dispositivos QA: Confirma rápidamente que el motor de vibración funciona en un smartphone recién recibido o reparado sin instalar una aplicación nativa.
  • Prototipado de patrones: Itera sobre secuencias de vibración personalizadas (alertas de notificación, retroalimentación de juegos, señales de accesibilidad) probándolas en vivo en el navegador.

Cómo funciona

La herramienta llama a navigator.vibrate(pattern) con el valor que proporcionas. El navegador devuelve true si la llamada fue aceptada y false si fue rechazada, por ejemplo, porque el documento no está enfocado o el dispositivo no es compatible con la API. Ambos resultados se registran en el registro de eventos. Todo el procesamiento ocurre completamente en el dispositivo; no se envían datos a ningún servidor.

Limitaciones

  • iOS (Safari, Chrome en iOS): Apple no expone navigator.vibrate() en iOS, por lo que la API siempre se reporta como no compatible en iPhones e iPads.
  • Navegadores de escritorio: Las computadoras de escritorio generalmente no tienen motor de vibración, por lo que incluso cuando la API está disponible no tiene efecto físico.
  • Pestañas en segundo plano: Algunos navegadores rechazan silenciosamente las llamadas de vibración cuando la página no está en primer plano.
  • Duración máxima: Los segmentos de vibración individual están limitados por el navegador (comúnmente alrededor de 10 segundos); los valores muy grandes pueden truncarse silenciosamente.