使用Java脚本检测设备制造商(即手机品牌) [英] Detecting device manufacturer (i.e. phone brand) with javascript

查看:52
本文介绍了使用Java脚本检测设备制造商(即手机品牌)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

人们已经在

上讨论了这个问题 How can I find the mobile phone manufacturer using javascript on mobile browserDetecting device brand

我需要的是一个与当前版本的Platform.js

相比,具有更强大的设备代码库的Java脚本库。 例如,我有一部索尼手机,当我运行window.navigator.userAgent;时,它返回设备名称为F3311(遗憾的是,Platform.js无法识别这一点)。这意味着索尼的另一款机型将与另一款设备代码一起出现。还有华为和小米等许多品牌。

有没有一个javascrip库,我可以用它来使用如下示例代码:

if(userDevice == SONY)
{
//do stuff that is supported by Sony phones only, etc
}
else if (userDevice == HUAWEI)
{
//show stuff that will appear only on Huawei phones, etc
}
这些可能是有用的, http://gs.statcounter.com/vendor-market-share/mobilehttps://www.idc.com/promo/smartphone-market-share/vendor

编辑1:我找到了这个https://deviceatlas.com/products/web,但我不知道他们是否提供了我需要的东西。我会询问的。

推荐答案

我找到了我要查找的设备型号的一个很好的列表。若要查看它,只需转到https://deviceatlas.com/device-data/devices并单击"按制造商浏览"即可显示它。现在,我可以尝试使用该列表修改Platform.js,或者编写类似的内容来检测我想要的品牌。(当然,如果有人已经为排名前10或20的制造商这样做了,那会更甜蜜 分享了他的好代码。)

编辑1:还有MOBILE-DETECTT.js,它的制造商检测范围比Platform.js更宽,正如您在https://github.com/hgoebl/mobile-detect.js/blob/master/mobile-detect.js上可能在他们的代码中看到的那样,但仍然有一些主要品牌在那个代码中复盖得很差,或者完全没有。无论如何,包括每一家制造商在内,似乎都超出了单一投资者的界限。这就像试图通过徒步旅行来自己绘制世界地图一样。因此,如此广泛的服务必须是付费服务也就不足为奇了。

编辑2:等等!我不知道它的存在:https://github.com/faisalman/ua-parser-js 它确实是肌肉!它看起来能识别我的索尼手机。好的!(至少在移动Chrome上是这样的。我也试过移动火狐,但它不起作用。)至于华为,不幸的是,它没有认识到这一点。尽管如此,它可能会提供一些用途,要测试它,您可以下载它(最好是缩小的)并使用一些代码,如下所示

<script src="ua-parser.min.js" charset="utf-8"></script>
<script type="text/javascript">

var parser = new UAParser();
var result = parser.getResult();
alert(result.device.vendor);

//this worked for me
var userDevice = result.device.vendor;
if(userDevice == "Sony")
{
// code to be run on Sony devices
}
</script>

这篇关于使用Java脚本检测设备制造商(即手机品牌)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆