Comment détecter les Tablettes Android en général. Useragent?
J'ai cherché partout. Nous sommes à l'aide d'un Motorola Zoom essayer notre tablette site de test.
Le problème est que l'Android Useragent est un général Useragent et il n'y a pas de différence entre une tablette Android et mobile Android. Je ne veux pas seulement la cible d'un dispositif spécifique, comme la Xoom Useragent depuis Android sera probablement sur plusieurs tablettes dans un avenir proche.
Nous utilisons le CMS Umbraco, et nous avons regardé à l'aide de la 51Degrees.mobi solution, et à ce moment cela ne fonctionne pas pour nos besoins. Peut-être dans l'avenir. Je sais 51Degrees et certaines des personnes à Umbraco allons faire quelques intégration dans Umbraco, mais le projet final ne sera probablement pas pour un couple de mois.
C'est pourquoi nous tenons à détecter la Chaîne Useragent d'une tablette Android et ne l'ai pas directement à notre site mobile comme c'est le cas actuellement.
Si quelqu'un sait comment faire pour détecter et Tablette Android en général, pas l'appareil serait très utile.
- Je suis juste deviner, mais peut-être il y a un moyen de voir comment la résolution d'affichage est ainsi?
- Oui, nous essayons d'utiliser le Javascript pour envoyer un res de la valeur sur le serveur. Nous essayons de nous __doPostBack mais qui semble ne pas être l'envoi de la valeur de notre retour. Nous avons caché la valeur d'entrée, il montre côté client, mais nous ne sommes pas récupérer côté serveur.
- Pas sûr si je peux vous aider ici.
Vous devez vous connecter pour publier un commentaire.
C'est incorrect. Mobile Android a "Mobile" de la chaîne en-tête User-Agent. Tablette Android ne fonctionne pas.
Mais il vaut la peine de mentionner qu'il y a assez peu de comprimés de ce rapport "Mobile" Safari dans le userAgent et le dernier n'est pas le seul/solide, pour les différencier entre le Mobile et la Tablette.
@Carlos:
Dans son article de Tim Bray recommande ce (comme le fait un autre post par Google), mais malheureusement, il n'est pas appliquée par tous les fabricants de tablettes.
La plupart des Android tablet user-agent de cordes que j'ai vu utiliser le navigateur safari mobile, par exemple, le Samsung Galaxy Tab:
Donc pour le moment je suis la vérification sur le dispositif de noms de détecter les tablettes Android. Tant qu'il y a juste un peu de modèles sur le marché, c'est ok, mais bientôt ce sera moche solution.
Au moins dans le cas de la XOOM, la partie mobile semble avoir disparu:
Mais comme il n'existe actuellement que des tablettes avec Andorid 3.x, la vérification sur Android 3 serait suffisant.
Mo’ mieux également de détecter les “mobiles” de l'agent utilisateur
Détecter périphérique Android via un Navigateur
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 voulez pas pour cible la Xoom seulement. Je n'ai pas de Xoom, mais devrait fonctionner.
J'ai créé un projet sur github. Check it out - https://github.com/codefuze/js-mobile-tablet-redirect. N'hésitez pas à soumettre des questions si il n'y a rien de mal!
Une fois que j'ai détecté Android dans le user agent, c'est comment j'ai différencier entre une tablette et un smartphone navigateurs (c'est à l'aide de Python, mais il est aussi simple pour d'autres langages de programmation):
Mise à JOUR: afin de refléter l'utilisation de Chrome sur Android, que par les commentaires ci-dessous.
Basée sur les Agents des chaînes sur ce site:
Ce résultats est venu:
Première:
Deuxième:
Troisième:
Si vous pouvez détecter niveau par niveau, je pense que le résultat est de 90 pour cent vrai. Comme SharePoint Canaux De Périphériques.
Voici ce que j'utilise:
Alors que nous ne pouvons pas dire si certains comprimés omettre "mobile", nombreux y compris le Samsung Galaxy Tab ne mobile dans leur user-agent, la rendant impossible à détecter entre une tablette android et android téléphone sans avoir recours à la vérification du modèle les détails. C'est à mon humble avis une perte de temps, sauf si vous envisagez sur la mise à jour et l'expansion de votre liste de périphériques sur une base mensuelle.
Malheureusement, la meilleure solution est ici pour se plaindre de Google à ce sujet et de les amener à corriger Chrome pour Android, ce qui ajoute un peu de texte pour identifier entre un terminal mobile et une tablette. L'enfer, même une seule lettre M OU T dans un endroit spécifique dans la chaîne serait suffisant, mais je suppose que ça fait trop de sens.
Xoom a le mot Xoom dans le user-agent: Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; Xoom Construire/HRI66) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13
Galaxy Tab a "Mobile" dans le user-agent: Mozilla/5.0 (Linux; U; Android 2.2; en-us; SCH-I800 Construire/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Ainsi, il est facile de détecter la Xoom, difficile à détecter si une version Android est mobile ou non.
Plus modernes comprimés exécution en nid d'abeille aka 3.x
Pas de téléphone run 3.x par défaut.
La plupart des tablettes qui s'exécutent actuellement 2.x ont moins de capacité et peut-être mieux d'lorsqu'ils sont présentés avec un site mobile de toute façon.
Je sais que ce n'est pas sans faille.. mais je suppose que c'est beaucoup plus précis que l'absence de mobile..
Tout Mobile Android peut-être "mobile" dans la chaîne de l'agent utilisateur, si l'on utilise Opera Mobile pour Android sur une Tablette? Il faut encore "mobile" dans la chaîne de l'agent utilisateur, mais doit être l'affichage de la Tablette de la taille des sites.
Vous aurez besoin de tester pour "mobile" qui n'est pas précédé de "l'opéra" plutôt que simplement "mobile"
ou vous pouvez simplement oublier Opera Mobile.
Je vous conseille d'utiliser Categorizr pour détecter si l'utilisateur est sur une tablette. Vous pouvez afficher categorizr résultats de test ici.
Si vous utilisez l'absence de "Mobile", puis son presque correct.
Mais il y a HTC Sensation 4G (4,3 pouces avec android 2.X) qui n'envoie pas de Mobile mot-clé.
La raison pour laquelle vous voulez traiter séparément est due à
iframes
etc.La 51Degrees bêta, 1.0.1.6 et la dernière version stable 1.0.2.2 (4/28/2011) ont maintenant la capacité de sniff pour tablette. Fondamentalement, le long des lignes de:
Espère que cela vous aide.
Essayer OpenDDR, il est gratuit contrairement à la plupart des autres solutions mentionnées.