iOS 5.0のユーザーエージェント文字列とは何ですか?


91

iOS 5.0のユーザーエージェント文字列とは何ですか?

ここでのiOS 4.0ユーザエージェントは:iPhone 4ユーザーエージェントとは何ですか?


2
このSOの答えで、特定のユーザーエージェント文字列がiOS 5.0の文字列かどうかを確認するための一般的な正規表現を見つけることができます。
ステファン

回答:


151

iPhone:

Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3

iPad:

Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3

3
正しい。iPhoneから:Mozilla / 5.0(iPhone; CPU iPhone OS 5_0 like Mac OS X)AppleWebKit / 534.46(KHTML、like Gecko)Version / 5.1 Mobile / 9A334 Safari / 7534.48.3
Ben

11

このサイトはまだ維持さている完全なリスト保持しているようです

iOS 2.0-5.1.1(現在まで)のiPhone、iPod Touch、iPad 。

ページの列にリストされている情報から完全なユーザーエージェント文字列を組み立てる必要があります。


1
ここで参照されているサイトから始めましたが、Google Analyticsが表示するWebキットのビルド番号がありませんでした。より完全なリストはuseragentstring.com/pages/Safariで見つかりました。
アンドリューシュタイツ

1
非常に大量のユーザーエージェントを含むリストを作成しました。それに役立つことを願っています:codereye.com/2014/12/list-of-mobile-user-agents.html
バシャン

ありがとう@ネイト、そうします。
bashan 14

10

ユーザーエージェント文字列でより完全なリストを見つけました。ところで、このサイトには、iOSユーザーエージェント文字列だけではありません。また、ホームページは、現在のブラウザのユーザーエージェント文字列を「分解」します。


ユーザーエージェント文字列のリンクが壊れています。:(私はそれが今ここを指していると思います:useragentstring.com/pages/useragentstring.php
Lucas Morgan

1
@LucasMorgan、メモありがとうございます!私は答えでそれを修正しました。
Andrew Steitz

2

「iPhone OS 5_0」ではなく小文字「iphone os 5_0」の文字列をスクラブして、エージェント文字列の評価を修正しました。今私は大文字のスクラブが失敗したとき、私のHTMLにiOS 5固有のクラスを適切に割り当てています。


1
ええと、私は個人的にはiPhoneだけではなくそれを検出します。上の例では、iPadおよびiPod touchにiOS 5固有のコードをレンダリングしていないからです。また、バージョンについては、ある時点でインクリメントされるということも考慮する必要があります。私の推奨事項はおそらくほとんどの人に明白でしょう-最初にAppleモバイルデバイス、つまりiPad / iPod / iPhoneを検出し、次にそれが当てはまる場合は、iOSではなくブラウザーのバージョンを解析します。バージョン/5.1が指標になります。バージョンがわかったら、「より低くない」条件でコードを適用します。
hndcrftd 2011年

1

以下を使用して、さまざまなモバイルデバイス、ビューポート、画面を検出します。私にとっては非常にうまく機能し、他の人に役立つかもしれません:

var pixelRatio = window.devicePixelRatio || 1;

var viewport = {
    width: window.innerWidth,
    height: window.innerHeight
};

var screen = {
    width: window.screen.availWidth * pixelRatio,
    height: window.screen.availHeight * pixelRatio
};

var iPhone = /iPhone/i.test(navigator.userAgent);
var iPhone4 = (iPhone && pixelRatio == 2);
var iPhone5 = /iPhone OS 5_0/i.test(navigator.userAgent);
var iPad = /iPad/i.test(navigator.userAgent);
var android = /android/i.test(navigator.userAgent);
var webos = /hpwos/i.test(navigator.userAgent);
var iOS = iPhone || iPad;
var mobile = iOS || android || webos;

window.devicePixelRatioデバイスの物理ピクセルとデバイスに依存しないピクセル(ディップ)の比率です。 window.devicePixelRatio=物理的なピクセル/ディップ。

詳細はこちら


1
回答ありがとうございます。ただし、これは効率的な方法ではなく、一部のデバイスバージョンが失われることに注意してください。たとえば、昔のiPad 1でユーザーエージェントを確認したところ、「... iPad; CPU OS 5_1_1 ...」と表示されました。あなたの変数のどれもそれをつかまなかったでしょう。次のような正規表現が必要ですvar iOS5 = /(iPhone|iPad).*OS 5_.*/i.test(navigator.userAgent);
Mauvis Ledford '14 / 10/14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.