可以通过javascript或HTTP标头检测*类型的移动设备*?

时间:2008-10-01 16:05:14

标签: javascript http windows-mobile http-headers

我收到了客户的请求,要求自动检测移动设备的类型(不是浏览器,类型。例如:Moto Q,Blackjack II等)并自动从下拉列表中选择设备支持的设备列表。

到目前为止,我发现HTTP标头(由移动IE提交)包含诸如

之类的信息
  • 分辨率
  • UA-CPU(我见过WM 2003的ARM和WM5的x86)
  • 用户代理(基本上只是说Windows CE)

我现在唯一能想到的就是使用分辨率/ cpu的组合并做出“最佳猜测”

有什么想法吗?

3 个答案:

答案 0 :(得分:4)

您可以在这里查看WURFL:http://wurfl.sourceforge.net/

来自网站:

  

那么......什么是WURFL?   WURFL是一个XML配置文件,其中包含有关许多移动设备的功能和特性的信息。

     

该文件的主要范围是尽可能多地收集有关访问WAP页面的所有现有移动设备的信息,以便开发人员能够为用户构建更好的应用程序和更好的服务。

答案 1 :(得分:2)

客户究竟是什么意思“支持”。当然,这意味着有问题的手机支持Web应用程序及其内部功能 - 忘记设备检测并且只关注检测应用程序正常运行所需的那些功能不是更好吗?例如,如果我的移动网站需要Ajax才能工作,那么我可以做一些简单的对象检测,而不是列出所有被称为“支持Ajax”的设备。

设备检测,就像浏览器检测不可靠一样。是的,这是可能的,但我不会推荐它......在我完成的项目中,我们使用用户代理字符串来检测各种设备。 indexOf javaScript方法派上用场了! :)

答案 2 :(得分:0)

另一种快速简便的解决方案是Apache Mobile Filter:http://www.apachemobilefilter.org