Hace unos días leía en hackplayers la noticia de que en HTML 5 hay un API para poder controlar el vibrador del móvil. Como comentan en hackplayers esto tiene sentido para dar más credibilidad a los juegos, añadir funcionalidad a aplicaciones, etc.
El problema está en que al igual que para ciertos controles del terminal, el propio navegador o la aplicación en cuestión te solicita permiso para acceder, (ejemplo cuando un enlace necesita acceder a google maps para comprobar la localización), en este caso no se solicita permiso.
He querido probar el caso comentado que aparecía hace casi un año en el blog de Terence Eden, el cual nos pasaba un código que se ejecutaba al pichar sobre un enlace y que daba la apariencia de recibir una llamada reproduciendo también el vibrador sin solicitar ningún tipo de autorización.
<body>
<script type=»text/javascript»>
navigator.vibrate = navigator.vibrate || navigator.webkitVibrate || navigator.mozVibrate || navigator.msVibrate;
navigator.vibrate([1000, 500, 1000, 500, 1000, 500, 1000, 500, 1000, 500, 1000, 500, 1000, 500]);
</script>
<img width=»100%» src=»phone.png» onclick=»window.location.href=’tel:09098790815′;» />
<audio autoplay=»autoplay»>
<source src=»ring.mp3″ />
</audio>
</body>
Url: https://shkspr.mobi/vibratescam/
- En iPhone 6 con el navegador Safari y con Chrome:
En este caso he podido comprobar que no se ejecuta el vibrador.
2. En Samsung Core Prime con el navegador Chrome y con el navegador de Internet por defecto:
Por el contrario en este caso he comprobado que si que se ejecuta el vibrador con los dos navegadores que he probado.
Por lo que he podido averiguar HTML5 debería funcionar bien tanto en iOS como en Android pero en este caso concreto el acceso a la API que controla el vibrador del terminal no ha funcionado en el iPhone 6.