我收到客户的请求,要求自动检测移动设备的类型(不是浏览器,类型。例如:Moto Q、Blackjack II 等)并自动从下拉列表中选择设备,并提供支持列表设备。
到目前为止,我发现 HTTP 标头(由移动 IE 提交)包含诸如
- 解析度
- UA-CPU(我见过 WM 2003 的 ARM 和 WM5 的 x86)
- 用户代理(基本上只是说 Windows CE)
我现在唯一能想到的可能是使用分辨率/CPU的组合并做出“最佳猜测”
有什么想法吗?
我收到客户的请求,要求自动检测移动设备的类型(不是浏览器,类型。例如:Moto Q、Blackjack II 等)并自动从下拉列表中选择设备,并提供支持列表设备。
到目前为止,我发现 HTTP 标头(由移动 IE 提交)包含诸如
我现在唯一能想到的可能是使用分辨率/CPU的组合并做出“最佳猜测”
有什么想法吗?
您可能想在这里查看 WURFL:http ://wurfl.sourceforge.net/ 。
从网站:
那么... WURFL 是什么?WURFL 是一个 XML 配置文件,其中包含有关许多移动设备的功能和特性的信息。
该文件的主要范围是尽可能多地收集有关访问 WAP 页面的所有现有移动设备的信息,以便开发人员能够为用户构建更好的应用程序和更好的服务。
客户所说的“支持”到底是什么意思。当然,这意味着有问题的手机支持 Web 应用程序及其内部功能 - 忘记设备检测并只专注于检测应用程序正常运行所需的那些功能不是更好吗?例如,如果我的移动网站需要 Ajax 工作,那么我可以做一些简单的对象检测来自己找出来,而不是列出所有据说“支持 Ajax”的设备。
设备检测,就像浏览器检测一样不可靠。是的,这是可能的,但我不推荐它......在我完成的一个项目中,我们使用用户代理字符串来检测各种设备。indexOf JavaScript 方法派上用场了!:)
另一个快速简单的解决方案是 Apache Mobile Filter: http: //www.apachemobilefilter.org