User-Agent ジェネレーター / User-Agent ガイド / モバイルとデスクトップの UA を見分ける

モバイルとデスクトップの UA を見分ける

User-Agent ガイド

レスポンシブのサーバー処理や統計でデバイス種別を分けるとき、User-Agent を参考にします。最も確実な手がかりは、文字列に含まれる Mobile トークンです。

核心となる手がかり

よくある落とし穴

iPadOS の Safari はデスクトップサイトをデフォルトでリクエストするため、macOS とほぼ同じ UA を送ります。そのため iPad トークンが無いことがあり、UA だけでは iPad をデスクトップと誤認しやすくなります。

より良い方法

画面サイズ・タッチ対応といった実際の機能は、UA よりも JavaScript や CSS メディアクエリで検出する方が正確です。UA はサーバー側の一次推定にとどめ、細かい分岐はクライアントで処理することを推奨します。

結局、デバイス判別は UA(サーバー)+ 機能検出(クライアント)を組み合わせたときに最も堅牢になります。