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