J'ai cherché partout. Nous utilisons un Motorola Zoom pour tester nos sites de test de tablettes. Le problème est que l'agent utilisateur Android est un agent utilisateur général et qu'il n'y a aucune différence entre la tablette Android et Android mobile. Je ne veux pas simplement cibler un appareil spécifique comme Xoom Useragent car Android sera très probablement sur plusieurs tablettes dans un proche avenir.
Nous utilisons Umbraco CMS, et nous avons envisagé d'utiliser la solution 51Degrees.mobi, et pour le moment, cela ne fonctionnera pas pour nos besoins. Peut-être à l'avenir. Je sais que 51Degrees et certaines personnes chez Umbraco vont faire une intégration dans Umbraco, mais le projet final ne sortira probablement pas avant quelques mois.
Par conséquent, pourquoi nous aimerions détecter la chaîne Useragent d'une tablette Android et ne pas la diriger vers notre site mobile comme c'est le cas actuellement.
Si quelqu'un sait comment détecter et Android Tablet en général, pas le périphérique spécifique serait très utile.
la source
Réponses:
Ceci est une erreur. Mobile Android a la chaîne "Mobile" dans l'en-tête User-Agent. La tablette Android ne le fait pas.
Mais il est à noter qu'il existe pas mal de tablettes qui signalent Safari "Mobile" dans userAgent et ce dernier n'est pas le seul / solide moyen de différencier Mobile et Tablette.
la source
@Carlos: Dans son article, Tim Bray le recommande (comme le fait un autre article de Google ), mais malheureusement, il n'est pas appliqué par tous les fabricants de tablettes.
La plupart des chaînes d'agent utilisateur de tablette Android que j'ai vues utilisent le safari mobile, par exemple le Samsung Galaxy Tab:
Donc, pour le moment, je vérifie les noms des appareils pour détecter les tablettes Android. Tant qu'il n'y a que quelques modèles sur le marché, ce n'est pas grave mais ce sera bientôt une solution moche.
Au moins dans le cas du XOOM, la partie mobile semble avoir disparu:
Mais comme il n'y a actuellement que des tablettes avec Andorid 3.x, vérifier sur Android 3 suffirait.
la source
Mieux vaut détecter également l'agent utilisateur «mobile»
Détecter un appareil Android via le navigateur
la source
else if (userAgent.search("ipad") > -1) document.write("<b> iPad <br>") else if ((userAgent.search("iphone") > -1)||(userAgent.search("ipod") > -1)) document.write("<b> iPhone or iPod <br>")
Vous pouvez essayer ce script car vous ne souhaitez pas cibler uniquement le Xoom. Je n'ai pas de Xoom, mais devrait fonctionner.
J'ai créé un projet sur github. Découvrez-le - https://github.com/codefuze/js-mobile-tablet-redirect . N'hésitez pas à soumettre des problèmes s'il y a quelque chose qui ne va pas!
la source
Une fois que j'ai détecté Android dans l'agent utilisateur, voici comment je différencie les navigateurs de tablette et de smartphone (cela utilise Python, mais est tout aussi simple pour d'autres langages de programmation):
MISE À JOUR: pour refléter l'utilisation de Chrome sur Android, comme indiqué dans les commentaires ci-dessous.
la source
Basé sur les chaînes d'agents sur ce site:
Ces résultats sont apparus:
Premièrement:
Seconde:
Troisième:
Si vous pouvez détecter niveau par niveau, je pense que le résultat est vrai à 90%. Comme les canaux d'appareils SharePoint.
la source
Voici ce que j'utilise:
la source
Bien que nous ne puissions pas dire si certaines tablettes omettent «mobile», beaucoup, y compris le Samsung Galaxy Tab , ont un mobile dans leur agent utilisateur, ce qui rend impossible la détection entre une tablette Android et un téléphone Android sans recourir à la vérification des spécificités du modèle. Cette IMHO est une perte de temps, sauf si vous prévoyez de mettre à jour et d'élargir votre liste d'appareils sur une base mensuelle.
Malheureusement, la meilleure solution ici est de se plaindre à Google à ce sujet et de les amener à réparer Chrome pour Android afin d'ajouter du texte pour identifier entre un appareil mobile et une tablette. Enfer, même une seule lettre M OU T à un endroit spécifique de la chaîne suffirait, mais je suppose que cela a trop de sens.
la source
Xoom a le mot Xoom dans l'agent utilisateur: Mozilla / 5.0 (Linux; U; Android 3.0.1; en-us; Xoom Build / HRI66) AppleWebKit / 534.13 (KHTML, comme Gecko) Version / 4.0 Safari / 534.13
Galaxy Tab a "Mobile" dans l'agent utilisateur: Mozilla / 5.0 (Linux; U; Android 2.2; en-us; SCH-I800 Build / FROYO) AppleWebKit / 533.1 (KHTML, comme Gecko) Version / 4.0 Mobile Safari / 533.1
Ainsi, il est facile de détecter le Xoom, difficile de détecter si une version spécifique d'Android est mobile ou non.
la source
La plupart des tablettes modernes fonctionnent en nid d'abeille aka 3.x Aucun téléphone n'exécute 3.x par défaut. La plupart des tablettes qui exécutent actuellement 2.x ont moins de capacité et pourraient de toute façon être mieux présentées avec un site mobile. Je sais que ce n'est pas parfait ... mais je suppose que c'est beaucoup plus précis que l'absence de mobile ...
la source
Alors que Mobile Android peut avoir "mobile" dans sa chaîne user-agent, que se passe-t-il s'il utilise Opera Mobile pour Android sur une tablette? Il contiendra toujours "mobile" dans sa chaîne user-agent, mais devrait afficher des sites de la taille d'une tablette. Vous devrez tester "mobile" qui n'est pas précédé par "opéra" plutôt que simplement "mobile"
ou vous pouvez simplement oublier Opera Mobile.
la source
Je recommanderais d'utiliser Categorizr pour détecter si l'utilisateur est sur une tablette. Vous pouvez voir les résultats des tests de catégorizr ici .
la source
Si vous utilisez l'absence de "Mobile", c'est presque correct. Mais il y a HTC Sensation 4G (4,3 pouces avec Android 2.X) qui n'envoie pas de mot-clé Mobile.
La raison pour laquelle vous voudrez peut-être le traiter séparément est due à
iframes
etc.la source
La version bêta de 51Degrees, 1.0.1.6 et la dernière version stable 1.0.2.2 (28/04/2011) ont maintenant la possibilité de renifler pour tablette. Fondamentalement, dans le sens de:
J'espère que cela vous aide.
la source
Essayez OpenDDR , il est gratuit contrairement à la plupart des autres solutions mentionnées.
la source