iOS Safari User-Agent文字列の解析
iOS Safari User-Agent文字列を解析して、iPhone/iPadモデル、iOSバージョン、Safariバージョンを抽出します。iOSのUA文字列がmacOSとどう異なるかを理解。
Mobile
詳細な説明
iOS User-Agent文字列の理解
iOS Safariは、macOS Safariとは異なるUA文字列フォーマットを持っています:
iPhoneのUA文字列
Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Mobile/15E148 Safari/604.1
iPadのUA文字列
Mozilla/5.0 (iPad; CPU OS 17_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Mobile/15E148 Safari/604.1
重要なiOSのUA動作
すべてのiOSブラウザはWebKitを使用します。 AppleはiOS上のすべてのブラウザに自社のWebKitエンジンの使用を義務付けています。
iOSのChrome:
Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/120.0.6099.119 Mobile/15E148 Safari/604.1
Chromeの代わりにCriOS(Chrome iOS)に注目してください。
デスクトップモードのiPad
iPadOS 13以降、iPad Safariはデフォルトでデスクトップサイトをリクエストし、macOSスタイルのUAを送信します。これによりUA文字列だけではiPadとMacを区別できなくなります。
ユースケース
モバイルアプリ開発者やWeb開発者がiOSのUA文字列を解析して、特定のiOSバージョンの機能ゲーティングを行います(例:iOS 16.4で追加されたWeb Pushサポート、iOS 16.4のScreen Wake Lock API)。また、デスクトップモードのiPadを識別してアダプティブUIを決定するためにも重要です。