我需要一个解决方案,让我能够检测浏览器是否是移动设备(即iPhone,Android手机),台式机或平板电脑(即iPad,Nook)。根据检测结果,它将重定向到相应的站点。
我可以使用WURFL,但这适用于私人公司,而且价格便宜,不会支付商业许可证。我不介意将WURFL代码本身公开;但是这个类将在JSP页面中被操作。如果我只需要将使用WURFL API代码的类公开,而不是周围的JSP代码,也许我可以使用它。这就是问题:在商业实体背后,关于WURFL API,什么被视为公共信息?我是否也必须使我的JSP页面成为开源的?
如果我不能使用WURFL,而不需要支付商业许可证,是否有另一个捆绑的Java解决方案甚至是JavaScript?
非常感谢。
答案 0 :(得分:2)
你应该看sebarmeli/JS-Redirection-Mobile-Site,它基于javascript,免费和开源,易于使用和强大。
答案 1 :(得分:2)
如果您喜欢WURFL和JavaScript是一种选择,我建议您查看http://wurfl.io/
简而言之,如果您导入一个微小的JS文件:
<script type='text/javascript' src="//wurfl.io/wurfl.js"></script>
您将留下一个类似于:
的JSON对象{
"complete_device_name":"Google Nexus 7",
"is_mobile":true,
"form_factor":"Tablet"
}
(假设您正在使用Nexus 7),您将能够执行以下操作:
if(WURFL.form_factor == "Tablet"){
//dostuff();
}
这就是你要找的东西。
免责声明:我是WURFL发明人,我为提供此免费服务的公司工作。感谢。
答案 2 :(得分:1)
请注意,基于正则表达式的解决方案(例如JS-Redirection-Mobile-Site)将无法正确分类某些浏览器。目前最大的问题是Android平板电脑,其中许多平板电脑将被这些解决方案视为移动设备。如果您真的想确保一切正常,那么您将不得不使用服务器端解决方案,但Android平板电脑可能尚未构成足够的流量来处理相关网站。
免责声明:我为服务器端设备检测解决方案提供商工作。
答案 3 :(得分:0)
查看51degrees.mobi谁提供了Mozilla Public License版本2下您需要的一些数据。
SourceForge还有一个自包含的PHP版本,可以快速实现。