O que é o agente de usuário do iPad?

114

Pelo que percebi, o iPad está usando o iPhone OS, mas com uma resolução de tela diferente do iPhone e do iPod touch. Muitos sites podem ter que alterar a detecção do agente do usuário para se adaptar ao iPad.

Portanto, qualquer pessoa com acesso ao iPad ou ao SDK do iPad pode nos fornecer a string do agente do usuário?

Yoric
fonte
2
Como você gostaria de se adaptar ao iPad quando não tem certeza de que suas alterações se encaixam?
Gumbo
9
Acho que a ideia é garantir que, quando alguém carregar seu site no iPad, não pense que é um iPhone. O agente do usuário é importante para qualquer aplicativo ou site que o detecte e atue nele.
Philip Morton
Todas as respostas estão desatualizadas há vários anos - eu apenas procuro opções aqui: webapps-online.com/online-tools/user-agent-strings (um pequeno esforço para detalhar, mas tem todos os dispositivos de que você pode precisar) .
brichins

Respostas:

126

Mozilla / 5.0 (iPad; U; CPU iPhone OS 3_2 como Mac OS X; en-us) AppleWebKit / 531.21.10 (KHTML, como Gecko) Versão / 4.0.4 Mobile / 7B314 Safari / 531.21.10

njy
fonte
16
A resposta aceita acima não é mais. Você não pode verificar o agente do usuário para 'iPhone', tem que ser 'iPad'. Acho que o link de jleedev acima está mais próximo do verdadeiro negócio: Mozilla / 5.0 (iPad; U; CPU OS 3_2 como Mac OS X; en-us) AppleWebKit / 531.21.10 (KHTML, como Gecko) Versão / 4.0.4 Mobile / 7B334b Safari / 531.21.10
Jon Raasch
2
Olá pessoal, aqui estão os detalhes do agente de usuário na Biblioteca de desenvolvedores do Safari: developer.apple.com/library/safari/#technotes/tn2010/tn2262/…
Matt Setter
6
Aqui está outro link mais abrangente e informativo: developer.apple.com/library/IOs/#documentation/…
Matt Setter
Esta resposta está incorreta. Do iOS 13, agora não há menção alguma ao iPad.
CpnCrunch de
28

No simulador , no modo iPad:

Mozilla / 5.0 (Macintosh; U; Intel Mac OS X 10_5_8; en-us) AppleWebKit / 531.9 (KHTML, como Gecko) Versão / 4.0.3 Safari / 531.9 (isto é para 3.2 beta 1)

Mozilla / 5.0 (iPad; U; CPU OS 3_2 como Mac OS X; en-us) AppleWebKit / 531.21.10 (KHTML, como Gecko) Versão / 4.0.4 Mobile / 7B334b Safari / 531.21.10 (isto é para 3.2 beta 3)

e no modo iPhone:

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

Não sei se o simulador é confiável, mas parece que você não consegue detectar se o dispositivo é um iPad apenas pela string do agente do usuário.

(Observação: estou no Snow Leopard, cuja string do agente do usuário para Safari é

Mozilla / 5.0 (Macintosh; U; Intel Mac OS X 10_6_2; en-us) AppleWebKit / 531.21.8 (KHTML, como Gecko) Versão / 4.0.4 Safari / 531.21.10

)

Kennytm
fonte
1
"Machintosh"? Isso é um erro de digitação ou é real? Se for real, pode ser como devemos detectá-lo.
Yoric
Parece que a diferença é suttle ... note a grafia de "Machintosh" e não "Macintosh" - ou isso é um erro de digitação?
Saul Dolgin
1
Desculpe, é erro de digitação. Porque não consigo copiar diretamente do simulador para o Mac.
kennytm
10.5.8 ?? Essa é a última versão do Leopard, mas o iPad tem um iPhone OS ajustado !! a sua assinatura do iPhone é do simulador do iPhone ou do dispositivo?
medopal
1
isso é realmente estranho !, por que o iPad relataria que a solicitação está vindo de um Safari de desktop enquanto o iPhone relata do Mobile Safari? Acho que a assinatura mudará em breve. A assinatura do iPad está reportando da CPU Intel (errada), Leopard OS (errada) e Safari (errada)
medopal
23

(quase 10 anos depois ...)

Do iOS 13 , o agente do usuário do iPad mudou para Mac OS, por exemplo:

Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit / 605.1.15 (KHTML, como Gecko) Versão / 13.0 Safari / 605.1.15

zvi
fonte
é o que temos também em um iPad Pro. Portanto, não há mais como diferenciar entre iPad / iOS e Mac OS?
low_rents
1
@low_rents isso é realmente um problema, veja aqui: stackoverflow.com/questions/56934826/…
zvi
15

De um 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

Mo.
fonte
9

É importante notar que, ao executar no modo de aplicativo da web (usando a apple-mobile-web-app-capablemetatag), o agente do usuário muda de:

Mozilla / 5.0 (iPad; U; CPU OS 3_2_1 como Mac OS X; en-us) AppleWebKit / 531.21.10 (KHTML, como Gecko) Versão / 4.0.4 Mobile / 7B405 Safari / 531.21.10

para:

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

danjwilson
fonte
Isso também é verdade para o iPhone. Se alguém tiver alguma documentação da Apple explicando essa diferença, eu acharei uma grande ajuda.
Richard Dallaway
7

iPad 2 em 4.3.5:

Mozilla / 5.0 (iPad; U; CPU OS 4_3_5 como Mac OS X; en-us) AppleWebKit / 533.17.9 (KHTML, como Gecko) Versão / 5.0.2 Mobile / 8L1 Safari / 6533.18.5

Robert G. Schaffrath
fonte
6

O meu diz:

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

BlueEel
fonte
4

Aqui está!

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

Eswar Rajesh Pinapala
fonte
3

Parece ser um consenso geral que todo dispositivo móvel da Apple, iphone, ipad ou ipod usa um agente de usuário que contém 'Mobile' e 'Safari'.

No entanto, usando o SDK mais recente (4.0.1) e lendo o agente do usuário no meu servidor Rails (usando request.env["HTTP_USER_AGENT"]), nunca obtemos a parte 'Safari'.

Não importa se a solicitação está sendo feita a partir do simulador ou de um dispositivo real, depuração ou liberação, sempre se parece com isto:

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

Apenas nada de 'Safari'. :-( Portanto, temos que usar a parte 'iPhone' para ter certeza. Isso é algo que a Apple não recomenda fazer.

Philipp Bolliger
fonte
2
O Chrome também tem AppleWebKit no agente do usuário.
Nestor
2

Do Simulador 3.2 final:

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

Christoph S.
fonte
1

Acho que vale a pena mencionar que geralmente você não precisa usar toda a cadeia de caracteres do agente, a menos que talvez encontre um motivo pelo qual precise adaptar o site a um modelo específico.

Você pode verificar se há iPhone, iPad e iPod na string do agente e cobrir todas as suas bases.

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

Apenas para iPad

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
Hardik Thakkar
fonte