從我收集的數據來看,iPad使用的是iPhone OS,但屏幕分辨率與iPhone和iPod touch不同。許多網站可能不得不更改其用戶代理檢測以適應iPad。什麼是iPad用戶代理?
那麼,任何能夠訪問iPad或iPad SDK的人都可以給我們提供用戶代理字符串嗎?
從我收集的數據來看,iPad使用的是iPhone OS,但屏幕分辨率與iPhone和iPod touch不同。許多網站可能不得不更改其用戶代理檢測以適應iPad。什麼是iPad用戶代理?
那麼,任何能夠訪問iPad或iPad SDK的人都可以給我們提供用戶代理字符串嗎?
的Mozilla/5.0(ipad公司; U; CPU iPhone OS 3_2等的Mac OS X; EN-US )AppleWebKit/531.21.10(KHTML,如Gecko)Version/4.0 0.4移動/ 7B314 Safari瀏覽器/ 531.21.10
上面接受的答案已不再適用。你不能檢查用戶代理的'iPhone',必須是'iPad'。我認爲jleedev的上面的鏈接更接近真實交易: Mozilla/5.0(iPad; U; CPU操作系統3_2,如Mac OS X; en-us)AppleWebKit/531.21.10(KHTML,如Gecko)Version/4.0.4 Mobile/7B334b Safari/531.21.10 – 2010-07-08 19:17:00
嗨夥計,以下是Safari開發者庫中的用戶代理詳細信息:http://developer.apple.com/library/safari/#technotes/tn2010/tn2262/_index.html – 2012-01-31 10:30:23
這裏是另一個,更全面和信息豐富的鏈接:http://developer.apple.com/library/IOs/#documentation/AppleApplications/Reference/SafariWebContent/OptimizingforSafarioniPhone/OptimizingforSafarioniPhone.html – 2012-01-31 11:03:28
從模擬器,在iPad的模式:
的Mozilla/5.0(在Macintosh; U;英特爾的Mac OS X 10_5_8; EN-US)爲AppleWebKit/531.9(KHTML,例如Gecko)版本/ 4.0.3 Safari瀏覽器/ 531.9(這是爲3.2的β1)的Mozilla/5.0(ipad公司; U; CPU OS 3_2等的Mac OS X; EN-US)爲AppleWebKit/531.21.10(KHTML,像壁虎)版本/ 4.0.4 Mobile/7B334b Safari/531.21.10 (此爲3.2 beta 3)
和在iPhone模式:
的Mozilla/5.0(iPhone; U;像iPhone OS X的CPU iPhone OS 3_2; EN-US)爲AppleWebKit/531.21.20(KHTML,例如Gecko)手機/ 7B298g
我不知道該怎麼模擬器是可靠的,但似乎無法檢測設備是否是iPad的只是來自用戶代理字符串。
(注:我對雪豹這對於Safari瀏覽器的用戶代理字符串是
的Mozilla/5.0(在Macintosh; U;英特爾的Mac OS X 10_6_2; EN-US)爲AppleWebKit/531.21。 8(KHTML,例如Gecko)版本/ 4.0.4 Safari瀏覽器/ 531.21.10
)
從模擬器3.2最終:
的Mozilla/5.0(ipad公司; U; CPU操作系統3_2,如 Mac OS X; EN-US)爲AppleWebKit/531.21.10 (KHTML,例如Gecko)版本/ 4.0.4 移動/ 7B367 Safari瀏覽器/ 531.21.10
從一個真實的設備:
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
值得一提的是,在web應用程序模式下運行(使用apple-mobile-web-app-capable
元標記)用戶代理改變從時:
的Mozilla/5.0(ipad公司; U; CPU OS 3_2_1 等馬c OS X; en-us) AppleWebKit/531.21.10(KHTML,如 Gecko)Version/4.0。4移動/ 7B405 Safari瀏覽器/ 531.21.10
到:
的Mozilla/5.0(ipad公司; U; CPU OS 3_2_1 像的Mac OS X; EN-US) 爲AppleWebKit/531.21。 10(KHTML,像 壁虎)移動/ 7B405
iPhone也是如此。如果任何人有任何蘋果文件解釋這種差異,我會發現這是一個很好的幫助。 – 2011-02-18 13:24:36
這似乎是,每一個移動蘋果設備,iphone,iPad或iPod使用同時包含「移動」和「野生」用戶代理一般的共識。
然而,採用最新的SDK(4.0.1),並讀取用戶代理我的rails服務器上(使用request.env["HTTP_USER_AGENT"]
),我們永遠無法得到「野生動物園」的一部分。
無論該請求是否正在從模擬器或真實設備,調試製作或發佈,它總是看起來是這樣的:
的Mozilla/5.0(iPhone; U; CPU iPhone OS 3_1_2像Mac OS X的DE-DE) 爲AppleWebKit/528.18(KHTML,例如Gecko)手機/ 7D11"
只是沒有 '野生動物園' :-(所以我們要使用 'iPhone' 部分是肯定的。 ,這是蘋果的東西不建議這樣做。
AppleWebKit意味着Safari – 2011-01-10 05:34:20
Chrome在用戶代理中也有AppleWebKit。 – Nestor 2011-02-01 03:13:59
在iPhone OS 3.2 SDK beta 3上的iPad用戶代理字符串上的Safari:
Mozilla/5.0(iPad; U; CPU操作系統3_2,如 Mac OS X; EN-US)爲AppleWebKit/531.21.10 (KHTML,例如Gecko)版本/ 4.0.4 移動/ 7B334b Safari瀏覽器/ 531.21.10
更多信息: http://developer.apple.com/library/safari/#technotes/tn2010/tn2262/_index.html
雷說:
的Mozilla/5.0(ipad公司; U; CPU OS 4_3等的Mac OS X; DA-DK)爲AppleWebKit/533.17.9(KHTML,例如Gecko)版本/ 5.0.2移動/ 8F190 Safari瀏覽器/ 6533.18.5
iPad 2 4.3.5下:
Mozilla/5.0(iPad; U; CPU OS 4_3_5,如Mac OS X; )AppleWebKit/533.17.9(KHTML,如Gecko)版本/ 5.0.2 Mobile/8L1 Safari/6533.18.5
在這裏,你去!
的Mozilla/5.0(ipad公司; U; CPU OS 3_2等的Mac OS X; EN-US)爲AppleWebKit/531.21.10(KHTML,例如Gecko)版本/ 4.0.4移動/ 7B334b Safari瀏覽器/ 531.21.10
我認爲值得一提的是,您通常不需要使用整個代理字符串,除非您找到了需要將網站定製到特定模型的原因。
您可以在代理字符串中檢查iPhone,iPad和iPod,並覆蓋您的所有基地。
if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/iPad/i))) {
appleMobileDevice = true;
}
else {
appleMobileDevice = false;
}
爲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
你會怎樣想,以適應iPad的時候,你不能確定你的變化適合? – Gumbo 2010-01-28 10:50:10
我認爲這個想法是確保當有人在iPad上加載你的網站時,它不會認爲它是iPhone。用戶代理對於檢測並執行它的任何應用程序或網站都很重要。 – 2010-01-28 10:53:10
所有的答案都過了幾年 - 我只是在這裏查找選項:http://www.webapps-online.com/online-tools/user-agent-strings(稍微努力鑽取,但它已您可能需要的每個設備)。 – brichins 2016-12-02 23:24:58