【发布时间】:2010-11-22 11:37:30
【问题描述】:
基于this,看起来很难让操作系统版本检测绝对正确。但是,我正在寻找一些不太体面的东西,它可以警告 OS X Tiger 及以下版本的用户我的产品可能存在兼容性问题。
我能想到的启发式方法是首先检测操作系统是否为 Mac(相对简单),然后将用户代理与正则表达式 10[/._][0-4] 匹配以检测 Tiger 及以下。
我并不真正关心用户代理被修改的情况——我想要一个公平的检测 OS X 版本的命中率,而不是 100% 的解决方案。
还有其他建议/建议吗?
此外,指向一个工具,该工具通过为不同的操作系统版本 + 浏览器版本组合生成已知的用户代理字符串来帮助我测试这一点,还有加分。
谢谢!
【问题讨论】:
-
似乎我误解了您的部分问题,因为我不是 Mac 用户,您介意发布一些示例用户代理字符串吗(例如 Mac 上的 Safari 和 Firefox)。
-
Safari: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.18 (KHTML, like Gecko) 版本/4.0.1 Safari/530.18 FF: Mozilla/5.0 (Macintosh;U;Intel Mac OS X 10.5;en-US;rv:1.9.1.2)Gecko/20090729 Firefox/3.5.2