【问题标题】:Best Open Source WURFL alternative [closed]最佳开源 WURFL 替代方案 [关闭]
【发布时间】:2012-03-12 19:29:12
【问题描述】:

我希望在 PHP 中进行一些设备检测,并且正在研究一些选项。现在看起来最好的是 WURFL http://wurfl.sourceforge.net/。但由于它的非开源许可证,我对此非常谨慎。我也想知道它是否相关,因为文档网站看起来有点过时了。

WURFL 等其他选项包括 http://deviceatlas.com/http://51degrees.mobi/ 但它们都没有接近开源。

然后是只有 PHP 的解决方案,例如 http://detectmobilebrowsers.mobihttp://code.google.com/p/php-mobile-detect/http://detectmobilebrowsers.com/ 但这些都使用了某种形式的正则表达式,看起来很丑。

对我来说理想的解决方案是我可以在本地存储并可以根据需要进行更新的开源 XML 文件或数据库。

我在做梦吗?您更喜欢哪种解决方案来检测移动用户?

【问题讨论】:

  • WURFL 入门级许可费用非常实惠,并且项目在过时的文档之外非常活跃。
  • 51Degrees.mobi 有一个在 Mozilla 公共许可证下获得许可的开源组件。见51degrees.codeplex.com
  • 如果 WURFL 的 AGPL 许可证不适合您,您可以查看托管版本(WURFL Cloud),它有免费计划。请注意,我隶属于 ScientiaMobile/WURFL,所以我鼓励您比较不同的选项,看看哪一个最适合您!旁注:我们同意 WURFL SourceForge 页面非常需要改造 - 它在最优先项目的短名单上:)
  • 51degrees 是一个仅限 .NET 的解决方案。问题是关于 PHP 解决方案。

标签: mobile responsive-design wurfl device-detection


【解决方案1】:

有什么理由不使用ua-parser 项目?

PHP 客户端在这里:https://github.com/tobie/ua-parser/tree/master/php

【讨论】:

  • 这个项目将 UA 字符串解析成可读的形式,它实际上根本不做任何“设备能力检测”。
【解决方案2】:

很抱歉恢复一个死帖,但有一个开源替代方案 - OpenDDR - 但我还找不到它的 PHP 库,因此您需要编写自己的解析和搜索例程。

【讨论】:

  • OpenDDR 现在可以在openddr.mobi 下找到。它已更新并包含在 Apache DeviceMap 中贡献的所有内容。
  • 免责声明:@WernerKeil 是 openddr.mobi 背后的开发者
【解决方案3】:

我使用基于http://detectmobilebrowsers.com/ 工作的脚本。它归结为一个正则表达式,几乎所有语言都支持它,而不仅仅是 PHP。随着正则表达式的发展,它甚至不是非常难看:主要的只有几行长,并且在大多数语言/框架中解析起来都非常快。作为一个正则表达式,它是完全透明的,并且不需要您安装一些库、DLL 或基于数据库/文件的存储库。

作者 Chad Smith 使用 WURFL 数据库编译了一个精简的极简正则表达式来检测移动浏览器。平板电脑被排除在外,因为它们通常可以很好地与桌面版本的页面配合使用。他似乎每年更新一次,或者至少每当有新的主要移动浏览器出现时(这种情况并不经常。)

【讨论】:

    【解决方案4】:

    将平板电脑浏览器检测添加到 Chad Smith 的正则表达式中很容易,而且看起来效果很好。请参阅关于部分:

    http://detectmobilebrowsers.com/about

    【讨论】:

      【解决方案5】:

      我使用MobileESP,它不如 WURFL 先进,但可以满足我的需要。 MobileESP 中没有可以升级的单独数据库,您必须升级整个库。

      【讨论】:

        【解决方案6】:

        如果您只需要设备分类 - 例如移动设备、台式机或平板电脑 - 那么Categorizr 可能是最佳选择。它采用移动优先的方法,因为与大量的移动浏览器和其他浏览器相比,它更容易识别少量且相对稳定的桌面浏览器。

        【讨论】:

        • 不再支持分类器
        猜你喜欢
        • 2011-11-27
        • 1970-01-01
        • 2011-09-08
        • 1970-01-01
        • 1970-01-01
        • 2011-01-10
        • 1970-01-01
        • 2010-11-27
        • 2013-10-15
        相关资源
        最近更新 更多