2

タブレットやAndroid携帯電話やタブレット、iPhone、iPadなどのモバイルデバイスのビューの1つで、条件付きでHTMLをレンダリング/非表示にしようとしています。これまでのところ、次の設定があります。

def mobile_agent?
  request.user_agent =~ /Mobile|webOS/
end

これはうまく機能しているようですが、現在はモバイルデバイスのみをサポートしており、タブレットはサポートしていません。mobile_fuは、モバイルデバイスとタブレットの両方をモバイルデバイスカテゴリにグループ化することを知っていますが、要求形式も変更されます。私のWebアプリケーションはレスポンシブテーマを利用しているため、ビューは、単一のビューに非表示にしたい埋め込みUnity Webプレーヤーを除いて、どのデバイスでも機能するようになっています。

上記の方法を拡張して、タブレットとモバイルデバイスを含める方法はありますか?

4

2 に答える 2

7

私はこれを使います

def mobile_agent?
  request.env["HTTP_USER_AGENT"] && request.env["HTTP_USER_AGENT"][/(iPhone|iPad|iPod|BlackBerry|Android)/]
end
于 2012-11-27T18:07:30.197 に答える
1

これを試してください:https ://github.com/neighborland/mobu

Mobuは、DetectMobileと呼ばれるRailsコントローラーに関する懸念事項を提供します。Mobuは、サーバー側のユーザーエージェント検出を実行して、リクエストをモバイル、タブレット、またはデフォルトとして分類します。

Mobuは、リクエストタイプに基づいてRailsビューパスを変更します。カスタムMIMEタイプや個別のサブドメインは必要ありません。

于 2013-10-09T21:10:20.847 に答える