Safari ブラウザーでブラウジングするときに iOS デバイスを検出するために正しく機能する次のコードを使用しています。
def mobile_user_agent?
@mobile_user_agent ||= ( request.env["HTTP_USER_AGENT"] && request.env["HTTP_USER_AGENT"] [/(Mobile\/.+Safari)/] )
end
ただし、デバイス上のアプリのブラウザーを介してサイトにアクセスするユーザーは検出されません。主にツイッター。
これは Twitter ユーザーの UA だと思いますが、これ (および他のアプリも同様) にどのように対応しますか?
"Mozilla/5.0 (iPhone; CPU iPhone OS 5_0_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9A405"