2010-01-28 11 views
111

Según lo que veo, el iPad usa el sistema operativo iPhone, pero con una resolución de pantalla diferente desde el iPhone y el iPod touch. Muchos sitios pueden tener que cambiar su detección de agente de usuario para adaptarse al iPad.¿Qué es el agente de usuario de iPad?

Entonces, ¿puede alguien con acceso al iPad o al SDK del iPad darnos la cadena de agente de usuario?

+2

¿Cómo le gustaría que adaptarse a la iPad cuando no se puede estar seguro de que los cambios en forma? – Gumbo

+9

Creo que la idea es asegurarse de que cuando alguien carga su sitio en el iPad, no piense que es un iPhone. El agente de usuario es importante para cualquier aplicación o sitio web que lo detecte y actúe sobre él. –

+0

Todas las respuestas están desactualizadas hace muchos años. Solo busco opciones aquí: http://www.webapps-online.com/online-tools/user-agent-strings (un pequeño esfuerzo para profundizar, pero tiene cada dispositivo que puedas necesitar). – brichins

Respuesta

126

Mozilla/5.0 (iPad; U; CPU iPhone OS 3_2 como Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, como Gecko) Versión/4.0 0.4 Mobile/7B314 Safari/531.21.10

+15

La respuesta aceptada anteriormente ya no es así. No puede verificar el agente de usuario para 'iPhone', tiene que ser 'iPad'. Creo que el enlace de jleedev de arriba está más cerca del trato real: Mozilla/5.0 (iPad; U; CPU OS 3_2 como Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, como Gecko) Versión/4.0.4 Móvil/7B334b Safari/531.21.10 –

+2

Hola amigos, aquí están los detalles del agente de usuario en la Biblioteca del desarrollador de Safari: http://developer.apple.com/library/safari/#technotes/tn2010/tn2262/_index.html –

+6

Aquí hay otro , un enlace más completo e informativo: http://developer.apple.com/library/IOs/#documentation/AppleApplications/Reference/SafariWebContent/OptimizingforSafarioniPhone/OptimizingforSafarioniPhone.html –

28

Desde el simulador, en el modo de iPad:

Mozilla/5.0 (Macintosh; T; Intel Mac OS X 10_5_8; en-us) AppleWebKit/531.9 (KHTML, like Gecko) Versión/4.0.3 Safari/531.9 (esto es para 3.2 beta 1)

Mozilla/5.0 (iPad; U; OS CPU 3_2 como Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, como Gecko) Versión/4.0.4 Móvil/7B334b Safari/531.21.10 (esto es para 3.2 beta 3)

y en modo de iPhone:

Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_2 como Mac OS X; es-es) AppleWebKit/531.21.20 (KHTML, like Gecko) Mobile/7B298g

No sé qué tan confiable es el simulador, pero parece que no se puede detectar si el dispositivo es simplemente iPad de la cadena de agente de usuario.

(Nota: Estoy en Snow Leopard, que la cadena de agente de usuario para Safari es

Mozilla/5.0 (Macintosh; T; Intel Mac OS X 10_6_2;) AppleWebKit/531.21 en-us. 8 (KHTML, like Gecko) Version/4.0.4 Safari/531.21.10

)

+1

"Machintosh"? ¿Es eso un error tipográfico o es real? Si es real, así podría ser como se supone que debemos detectarlo. – Yoric

+0

Parece que la diferencia es sutil ... tenga en cuenta la ortografía de "Machintosh" no "Macintosh" - ¿o es un error tipográfico? –

+1

Lo siento es un error tipográfico. Porque no puedo copiar directamente desde el simulador a la Mac. – kennytm

2

De Simulador 3.2 final:

Mozilla/5.0 (iPad; U; CPU OS 3_2 como Mac OS X; es-es) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 móvil/7B367 Safari/531.21.10

16

Desde un dispositivo real:

Mozilla/5.0 (iPad; U; CPU OS OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B367 Safari/531.21.10

10

vale la pena señalar que cuando se ejecuta en modo de aplicación web (usando la etiqueta meta apple-mobile-web-app-capable) el agente de usuario cambia de:

Mozilla/5.0 (iPad; U; OS CPU 3_2_1 como Ma c OS X; en-us) AppleWebKit/531.21.10 (KHTML, como Gecko) Versión/4.0.4 Mobile/7B405 Safari/531.21.10

a:

Mozilla/5.0 (iPad; U; OS CPU 3_2_1 como Mac OS X; en-us) AppleWebKit/531.21. 10 (KHTML, como Gecko) Mobile/7B405

+0

Esto también se aplica al iPhone. Si alguien tiene alguna documentación de Apple que explique esta diferencia, me parece una gran ayuda. –

3

parece haber un consenso general de que cada dispositivo móvil de apple, iPhone, iPad o iPod utiliza un agente de usuario que contiene tanto 'móvil' y 'Safari'.

Sin embargo, utilizando el último SDK (4.0.1) y leyendo el agente de usuario en el servidor de mis raíles (usando request.env["HTTP_USER_AGENT"]), nunca obtenemos la parte 'Safari'.

No importa si la petición se está haciendo desde el simulador o un dispositivo real, depurar o liberación, siempre se ve algo como esto:

Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_1_2 como Mac OS X, de-dE) AppleWebKit/528.18 (KHTML, like Gecko) Mobile/7D11"

Sólo hay 'Safari' :-(Así que tenemos que utilizar la parte 'iPhone' para estar seguro. . Eso es algo que Apple no recomienda hacer.

+0

AppleWebKit implica Safari –

+2

Chrome tiene AppleWebKit en el agente de usuario, también. – Nestor

6

Mina dice:

Mozilla/5.0 (iPad; U; OS CPU 4_3 como Mac OS X; da-dk) AppleWebKit/533.17.9 (KHTML, como Gecko) Version/5.0.2 Mobile/8F190 Safari/6533.18.5

7

iPad 2 en 4.3.5:

Mozilla/5.0 (iPad; U; CPU OS 4_3_5 como Mac OS X; es-es) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8L1 Safari/6533.18.5

4

Aquí tienes!

Mozilla/5.0 (iPad; U; OS CPU 3_2 como Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10

1

creo que vale la pena mencionar que por lo general no es necesario utilizar toda la cadena de agente, a menos que tal vez a encontrar una razón donde tiene que adaptar el sitio web a un modelo específico.

Puede buscar iPhone, iPad y iPod en la cadena del agente y cubrir todas sus bases.

if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/iPad/i))) { 
    appleMobileDevice = true; 
} 
else { 
    appleMobileDevice = false; 
} 
0

para iPad Sólo

Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10 
Cuestiones relacionadas