什么是iPad用户代理?


114

据我所知,iPad使用的是iPhone OS,但屏幕分辨率与iPhone和iPod touch不同。因此,许多站点可能必须更改其用户代理检测以适应iPad。

那么,有权使用iPad或iPad SDK的任何人都可以给我们用户代理字符串吗?


2
当您不确定所做的更改是否合适时,您想如何适应iPad?
浓汤

9
我认为这样做是为了确保当有人在iPad上加载您的网站时,不会认为它是iPhone。用户代理对于检测到并对其起作用的任何应用程序或网站都很重要。
菲利普莫顿2010年

所有答案都已经过时了几年-我只是在这里查找选项:webapps-online.com/online-tools/user-agent-strings(需要进行一些细化,但是它拥有您可能需要的每台设备) 。
brichins '16

Answers:


126

Mozilla / 5.0(iPad; U; CPU iPhone OS 3_2,例如Mac OS X; zh-cn)AppleWebKit / 531.21.10(KHTML,例如Gecko)版本/4.0.4移动版/ 7B314 Safari / 531.21.10


16
上面接受的答案不再了。您无法检查用户代理是否为“ iPhone”,必须为“ iPad”。我认为jleedev的上述链接更接近真实交易:Mozilla / 5.0(iPad; U; CPU OS 3_2,例如Mac OS X; zh-cn)AppleWebKit / 531.21.10(KHTML,例如Gecko)版本/4.0.4移动/ 7B334b Safari / 531.21.10
乔恩·

2
嘿伙计,这里的Safari开发库中的用户代理信息:developer.apple.com/library/safari/#technotes/tn2010/tn2262/...
马特二传手

6
这里还有一个更全面和翔实的链接:developer.apple.com/library/IOs/#documentation/...
马特二传手

这个答案是不正确的。从iOS 13开始,现在完全没有提到iPad。
CpnCrunch


28

在iPad模式下的模拟器中:

Mozilla / 5.0(Macintosh; U; Intel Mac OS X 10_5_8; zh-cn)AppleWebKit / 531.9(KHTML,like Gecko)Version / 4.0.3 Safari / 531.9 (这是针对3.2 beta 1的)

Mozilla / 5.0(iPad; U; CPU OS 3_2,例如Mac OS X; zh-cn)AppleWebKit / 531.21.10(KHTML,例如Gecko)版本/4.0.4移动版/ 7B334b Safari / 531.21.10 (适用于3.2 Beta) 3)

在iPhone模式下:

Mozilla / 5.0(iPhone; U; CPU iPhone OS 3_2,例如Mac OS X; zh-cn)AppleWebKit / 531.21.20(KHTML,例如Gecko)移动设备/ 7B298g

我不知道模拟器的可靠性如何,但是似乎您无法仅通过用户代理字符串来检测设备是否为iPad。

(注意:我在Snow Leopard上,Safari的用户代理字符串是

Mozilla / 5.0(Macintosh; U; Intel Mac OS X 10_6_2; zh-cn)AppleWebKit / 531.21.8(KHTML,如Gecko)版本/4.0.4 Safari / 531.21.10


1
“机械师”?这是错字还是真的?如果它是真实的,那可能就是我们应该如何检测它。
约里克

看起来差别很明显...请注意,“ Machintosh”的拼写不是“ Macintosh”-还是错字?
索尔·多尔金

1
抱歉,是错字。因为我无法直接从模拟器复制到Mac。
kennytm 2010年

10.5.8 ?? 那是Leopard的最后一个版本,但是iPad调整了iPhone OS!是来自iPhone模拟器还是来自设备的iPhone签名?
medopal 2010年

1
那真是太奇怪了!为什么iPad会报告来自桌面Safari的请求,而iPhone为什么会报告来自Mobile Safari的请求?我认为签约很快就会改变。iPad签名来自Intel CPU(错误),Leopard OS(错误)和Safari(错误)的报告
medopal,2010年

23

(近10年后...)

iOS 13开始,iPad的用户代理已更改为Mac OS,例如:

Mozilla / 5.0(Macintosh; Intel Mac OS X 10_15)AppleWebKit / 605.1.15(KHTML,如Gecko)版本/13.0 Safari / 605.1.15


这就是我们在iPad Pro上获得的。因此,没有办法再区分iPad / iOS和Mac OS了吗?
low_rents

1
@low_rents这是一个真正的问题,在这里看到:stackoverflow.com/questions/56934826/...
零价铁

15

在真实设备上:

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


9

值得注意的是,当在Web应用模式下运行(使用apple-mobile-web-app-capablemeta标记)时,用户代理会从以下位置更改:

Mozilla / 5.0(iPad; U; CPU OS 3_2_1,例如Mac OS X; zh-cn)AppleWebKit / 531.21.10(KHTML,例如Gecko)版本/4.0.4移动版/ 7B405 Safari / 531.21.10

至:

Mozilla / 5.0(iPad; U; CPU OS 3_2_1,例如Mac OS X; zh-cn)AppleWebKit / 531.21.10(KHTML,例如Gecko)移动设备/ 7B405


iPhone也是如此。如果有人有任何Apple文档解释这种差异,我会发现这对您有很大帮助。
理查德·达拉威

7

4.3.5下的iPad 2:

Mozilla / 5.0(iPad; U; CPU OS 4_3_5如Mac OS X; zh-cn)AppleWebKit / 533.17.9(KHTML如Gecko)版本/5.0.2 Mobile / 8L1 Safari / 6533.18.5


6

我的说:

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


4

干得好!

Mozilla / 5.0(iPad; U; CPU OS 3_2,例如Mac OS X; zh-cn)AppleWebKit / 531.21.10(KHTML,例如Gecko)版本/4.0.4移动版/ 7B334b Safari / 531.21.10


3

似乎已经普遍同意,每个移动Apple设备,iphone,ipad或ipod都使用包含“移动”和“ Safari”的用户代理。

但是,使用最新的SDK(4.0.1)并读取我的Rails服务器上的用户代理(使用request.env["HTTP_USER_AGENT"]),我们永远都不会获得“ Safari”部分。

不管是从模拟器发出请求还是从真实设备发出,调试还是释放请求,它总是看起来像这样:

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

只是没有“ Safari”。:-(因此,我们必须使用“ iPhone”部分来确保。这是苹果不建议这样做的做法。


2
Chrome的用户代理中也有AppleWebKit。
Nestor

2

从Simulator 3.2 final:

Mozilla / 5.0(iPad; U; CPU OS 3_2,例如Mac OS X; zh-cn)AppleWebKit / 531.21.10(KHTML,例如Gecko)版本/4.0.4移动版/ 7B367 Safari / 531.21.10



1

我认为值得一提的是,您通常不需要使用整个代理字符串,除非您找到需要针对特定​​模型定制网站的原因。

您可以在代理字符串中检查iPhone,iPad和iPod,并覆盖所有基础。

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


0

仅适用于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
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.