Cómo detectar sólo el navegador nativo de Android

Es fácil detectar el dispositivo Android, pero tengo problemas para detectar SOLO el navegador nativo de Android. El problema es que el navegador Dolphin tiene una cadena de agente de usuario casi idéntica, y me gustaría saber cómo están utilizando el navegador nativo o no.

es posible?

5 Solutions collect form web for “Cómo detectar sólo el navegador nativo de Android”

Sólo tiene que probar algunas partes de la cadena del agente de usuario para asegurarse de que tiene el navegador predeterminado de Android:

var nua = navigator.userAgent; var is_android = (nua.indexOf('Mozilla/5.0') > -1 && nua.indexOf('Android ') > -1 && nua.indexOf('AppleWebKit') > -1); 

Puede utilizar lo siguiente para asegurarse de que no coincide con cromo en android, aunque en muchos dispositivos ahora, cromo se utiliza como navegador predeterminado.

 var nua = navigator.userAgent; var is_android = ((nua.indexOf('Mozilla/5.0') > -1 && nua.indexOf('Android ') > -1 && nua.indexOf('AppleWebKit') > -1) && !(nua.indexOf('Chrome') > -1)); 

EDIT: Si desea proteger contra la sensibilidad a mayúsculas y minúsculas, puede utilizar lo siguiente:

 var nua = navigator.userAgent.toLowerCase(); var is_android = ((nua.indexOf('mozilla/5.0') > -1 && nua.indexOf('android ') > -1 && nua.indexOf('applewebkit') > -1) && !(nua.indexOf('chrome') > -1)); 

En un Galaxy S3, encontré que Chrome y el navegador nativo tenían 'AppleWebkit', así que tomé esa pieza de mi declaración condicional. También he añadido la versión que sólo aparece en el navegador nativo parece. Funciona para mí como

 var ua = navigator.userAgent; var isAndroidNative = ((ua.indexOf('Mozilla/5.0') > -1) && (ua.indexOf('Android') > -1) && !(ua.indexOf('Chrome') > -1) && (ua.indexOf('Version') > -1)) 

Creo que estás buscando esto:

Navegador nativo de Android no actualizado por encima de la versión 534.30 para que pueda filtrar a la versión y la combinación de la cadena UA de Android (arriba podemos suponer que es un navegador Chrome)

Aquí está mi código JavaScript de ejemplo:

(Si necesitas un estilo específico, añadiría una clase al cuerpo con el siguiente fragmento JS)

 var defectAndroid = $window.navigator && $window.navigator.userAgent.indexOf('534.30') > 0 && $window.navigator.userAgent.toLowerCase().match(/android/); if (defectAndroid) { // sample code specific for your Android Stock browser } 

(Algunos dispositivos Android informan 'android' es por eso que necesitamos la conversación en minúsculas)

 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'; } 

Puede hacerlo con Javascript y la función useragent. Lo que tienes que hacer es hacer 2 solicitudes If:

Primero se detecta el tipo de dispositivo:

 If android, ios, mobile, ipad, iphone Take this setting 

Ahora usted hace tanto como usted necesita if-requests o una solicitud de caso para detectar el tipo de navegador

 If chrome, firefox, safari and so on Take this setting 

Eso es en la teoría

  • Jqm botón de navegación pulsado al presionar el teclado virtual de Android Tecla 'Siguiente' si el campo de formulario está debajo de la barra de navegación
  • Monitorización de usuarios reales para móviles
  • Incluya algunas páginas en una página en JQuery móvil
  • Usar jQuery móvil sin conexión
  • JQuery mobile, eliminar página anterior
  • ¿Cómo implementar carga más función en android usando phonegap?
  • Cómo ocultar la barra de direcciones del navegador cuando la altura de la página es fija y tiene jQuery desplazamiento interno
  • Swipeleft / swiperight activado durante el desplazamiento vertical en jQuery móvil
  • Etiqueta de audio en el dispositivo Android
  • Problema - blockWebkitDraw lockedfalse
  • JQuery y la compatibilidad del navegador móvil?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.