Detectar el teléfono Android a través de Javascript / jQuery

¿Cómo puedo detectar que el dispositivo en uso es un Android para un sitio web para móviles?

Necesito aplicar ciertos atributos css a la plataforma Android.

Gracias

Echa un vistazo a eso: http://davidwalsh.name/detect-android

JavaScript:

var ua = navigator.userAgent.toLowerCase(); var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile"); if(isAndroid) { // Do something! // Redirect to Android-site? window.location = 'http://android.davidwalsh.name'; } 

PHP:

 $ua = strtolower($_SERVER['HTTP_USER_AGENT']); if(stripos($ua,'android') !== false) { // && stripos($ua,'mobile') !== false) { header('Location: http://android.davidwalsh.name'); exit(); } 

ŻQué te parece este monoplaza?

 var isAndroid = /(android)/i.test(navigator.userAgent); 

El modificador i se utiliza para realizar correspondencia entre mayúsculas y minúsculas.


Técnica extraída del proyecto de prueba de Cordova AdMob: https://github.com/floatinghotpot/cordova-admob-pro/wiki/00.-How-To-Use-with-PhoneGap-Build

 ;(function() { var redirect = false if (navigator.userAgent.match(/iPhone/i)) { redirect = true } if (navigator.userAgent.match(/iPod/i)) { redirect = true } var isAndroid = /(android)/i.test(navigator.userAgent) var isMobile = /(mobile)/i.test(navigator.userAgent) if (isAndroid && isMobile) { redirect = true } if (redirect) { window.location.replace('jQueryMobileSite') } })() 

No hay necesidad de jQuery aquí. Como ya se mencionó anteriormente, debe comprobarlo utilizando la propiedad de agente de usuario. Si estás interesado en detectar otras plataformas, o simplemente si estás en un dispositivo móvil en general, escribí este componente de is-mobile que puede detectarlo.

No dude en importarla y usarla como se muestra en estos ejemplos:

 isMobile.Android() => true/false isMobile.iOS() => true/false isMobile.Windows() => true/false isMobile.KindleFire() => true/false isMobile.any() => true/false 

Creo que la respuesta de Michal es la mejor, pero podemos dar un paso más y cargar dinámicamente un CSS para Android según la pregunta original:

 var isAndroid = /(android)/i.test(navigator.userAgent); if (isAndroid) { var css = document.createElement("link"); css.setAttribute("rel", "stylesheet"); css.setAttribute("type", "text/css"); css.setAttribute("href", "/css/android.css"); document.body.appendChild(css); } 

Js versión, captura el iPad también:

 var is_mobile = /mobile|android/i.test (navigator.userAgent); 
  • Ancho de pantalla Problema al utilizar diferentes navegadores en dispositivos portátiles / inteligentes
  • JQuery detecta si se mantiene pulsada la tecla del teclado
  • Phonegap - Evita la rotación mientras se sigue habilitando la orientación automática?
  • Origen nulo no está permitido por Access-Control-Allow-Origin.:1 en la vista web android?
  • JavaScript: Detectar pellizco para aplicar zoom cuando 'usuario-escalable' está establecido en sí
  • Desplazamientos de encabezados fijos en jquery mobile
  • Método multiplataforma para eliminar la barra de direcciones de una aplicación web para móviles
  • ¿Soporta Android jquery?
  • Cómo capturar clave de retroceso clave en el navegador Android - javascript?
  • Jquery móvil, error con menú de selección en Android con Chrome versión 50
  • Samsung Galaxy Devices no puede usar geolocation.getCurrentPosition
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.