Rails检测移动设备的方式?
是否有“轨道方式”来检测用户是否正在使用移动设备? 我的意思是我可以在erb中使用的方法,如下所示:
您可以通过定义如下函数来实现这一目的:
def mobile_device? if session[:mobile_param] session[:mobile_param] == "1" else request.user_agent =~ /Mobile|webOS/ end end
或者您可以使用gem来检测移动设备
使用浏览器 gem。 您可以通过自定义user_agent检测浏览器。
在application_helper.rb
:
def mobile_device agent = request.user_agent return "tablet" if agent =~ /(tablet|ipad)|(android(?!.*mobile))/i return "mobile" if agent =~ /Mobile/ return "desktop" end
然后你可以在你的视图中使用它:
<% if mobile_device == "mobile" %> Show something for mobile users. <% end %>
你也可以通过在application.html.erb
头标记上包含 解决这个问题。
只要您的网站响应(例如使用Bootstrap),您应该没问题。