Buenas prácticas en la detección del UserAgent para dispositivos móviles Android

En el desarrollo web, una de las cosas que últimamente es de obligación tener en cuenta, es para qué dispositivo estamos o vamos a desarrollar. En el tiempo en el que estamos actualmente, tenemos que tener en cuenta cuando detectemos en el useragent el dispositivo para el que vamos a desarrollar, no solo el sistema operativo para los móviles, sino también detectar si es un dispositivo móvil o una tablet.

En el caso de Android, los compañeros del blog para Webmasters de Google, son quienes nos avisan de como solventar este problema. Esto lo tenemos que tener en cuenta gracias a que Android, ahora mismo está siendo usado tanto en teléfonos móviles como en los tablets, y claro, los usuarios de tablets, no querrán ver la versión reducida de nuestra web, sino la versión de "sobremesa" de la página web.

Los ingenieros de Android recomiendan detectar exactamente "mobile" en la cadena del user-agent además de "android". Veamos unos ejemplos:

Ejemplo 1

Mozilla/5.0 (Linux; U; Android 3.0; en-us; Xoom Build/HRI39)
AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13

En esta cadena, podemos ver que usamos la versión Android pero no detectamos la cadena "mobile" por lo que es una versión Android de escritorio, ya sea en un portátil o en un tablet.

Ejemplo 2

Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; Nexus One Build/FRG83)
AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

En esta otra cadena, si que vemos la palabra "mobile" por lo que si es un usuario con un dispositivo móvil y lo redirigimos a nuestra página adaptada para móviles.

En la imágen podemos ver una cadena real de un useragent en el que vemos características comunes en todos los dispositivos Android como la plataforma, el dispositivo y la versión de desarrollo, siendo la única variante, si es dispositivo móvil o no.

Otra cosa bastante interesante a la hora de detectar el useragent en el desarrollo de la web, es que podemos implementar características especiales para optimizar la página a las pantallas táctiles.

Via | Google Webmaster Blog

Portada de Genbeta