我正在开发一个商业网络应用程序,该应用程序具有单独的移动浏览器版本,旨在用于功能更强大的设备(BlackBerry,iPhone,Android等)。我不想做简单的用户代理包含样式逻辑,并且正在查看各种检测库。看起来WURFL和移动设备浏览器文件是我最好的选择。
CodePlex上的Mobile Device Browser File(MDBF)项目通过Request.Browser属性公开信息。此外,它还有Microsoft公共许可证(Ms-PL)。 Mobile Browser Detection in ASP.NET提到“MDBF的数据来自WURFL”,Mix: Mobile Web Sites with ASP.NET MVC and the Mobile Browser Definition File确认MBDF“是从许多来源的数据库创建的,包括流行的WURFL移动设备功能数据库。”
51degrees有.NET Mobile API使用WURFL数据文件,并填充Request.Browser。它根据Mozilla Public License Version 1.1获得许可。并声称:
安装了.NET Mobile API WURFL提供移动设备数据, 这些电话会非常有效 与之相比时的准确数据 提供标准浏览器信息 由微软
由于官方WURLF .NET API是使用GPL许可证分发的,因此它对我的项目来说是非首发。
WURFL ASP.NET Implementations比较了WURFL的ASP.NET实现,但这已经超过一年了(2009-01-16 - 文章提交),并没有提到51degrees API或MDBF。
我可以获得有关使用哪个库的任何反馈。
答案 0 :(得分:5)
引用:“由于开发和支持移动设备浏览器文件的团队的组织重组,我们将不再拥有支持和更新此CodePlex项目的资源。该团队将提供另外两个版本 - 一个在2010年7月27日和2010年8月24日的最终版本。“
所以我不仅仅是坏消息的承载者......
我们计划使用:
51度
其中有一个非常好的例子:
希望这有帮助。
答案 1 :(得分:2)
MDBF最近更新了。如果你需要的是基本信息,它可能会更好,因为它与你的.NET框架很好地集成。
Marg.Wurfl绝对是一个不错的选择,并且也与.NET框架集成。
两者都有一种适用于旧.NET风格的方法,而不是MVC。在MVC中,你必须做自己的腿部工作。
您可能还需要考虑具有.NET API的DeviceAtlas,并且在.NET中具有非常好的性能。
特别针对您的问题,WURFL几乎每月更新一次,而AFAIK没有针对MDBF的计划更新,他们会在他们感觉到的时候发布更新(是的,不是非常令人兴奋)。 您可以使用Javascript来检测现代浏览器(如iPhone,Android和最近的Nokias)中的功能,但对于所有其他功能,User-Agent字符串仍然是唯一真正的选项,因此我认为这取决于您的目标市场。您可能希望创建适用于所有功能的超简单版本以及执行功能检测的高级版本。 如果您计划拥有大量网站,我不喜欢在线服务的想法。一个月一次的更新是可以的,通过DeviceAtlas或Mobile Phone Wizards等商业产品,您可以获得更频繁的更新。
免责声明:我曾经为创建DeviceAtlas
的dotMobi工作答案 2 :(得分:2)
WURFL官方.NET API最近由ScientiaMobile发布 - 这是WURFL人民的新人。您可以在此处访问它:http://www.scientiamobile.com/site/page/view/downloads。但是,它受AGPL许可的约束,这基本上意味着您需要购买商业许可才能在商业应用程序(包括网站)中使用API。原始数据仍然是免费的。
显示如何将其与ASP.NET集成的白皮书是:http://wurfl.sourceforge.net/dotNet。
答案 3 :(得分:1)
我认为WURFL拥有更多功能和更活跃的社区,并且它比mdbf更快速地发布。但我不得不说微软正在做好工作。你也可以看看Marg.Wurfl。
请记住,您可以在SaaS中使用GPL软件。
您也可以查看Marg.Wurfl,
答案 4 :(得分:1)
正如Dino所说,WURFL API是在AGPL下发布的,但也可以根据商业许可条款获得(这称为双重许可,或者在FSF的说法中提供GPL例外)。
但是,wurfl.xml文件不再被视为原始数据。由于保持数据组织和组的创造性工作,ScientiaMobile声称wurfl.xml文件的版权从2.2版开始并在某些条件下分发(特别是,wurfl.xml文件只能与一个文件一起使用)标准API):
http://wurfl.sourceforge.net/licence.php
获取商业许可证还会对wurfl.xml文件本身提供一些额外的权利。