Code Monkey home page Code Monkey logo

ua-device's Issues

echo?

js 里面可以用 echo??

bug report: Redmi (红米) 未识别厂商信息

Input:

Mozilla/5.0 (Linux; Android 5.1.1; Redmi 3 Build/LMY47V; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043305 Safari/537.36 MicroMessenger/6.5.8.1060 NetType/WIFI Language/zh_CN

Output:

{
  "options": {
    "useFeatures": false,
    "detectCamouflage": true
  },
  "browser": {
    "stock": false,
    "hidden": false,
    "channel": "",
    "name": "QQ Browser",
    "version": {
      "original": "6.2",
      "alias": null
    }
  },
  "engine": {
    "name": "Webkit",
    "version": {
      "original": "537.36",
      "alias": null
    }
  },
  "os": {
    "name": "Android",
    "version": {
      "original": "5.1.1",
      "alias": null
    }
  },
  "device": {
    "type": "mobile",
    "identified": false,
    "model": "Redmi 3"
  },
  "camouflage": false,
  "features": []
}

Google Browser 是什么意思?

检测结果里面,浏览器有一项是 Google Browser, 版本是 4.0。

想问一下这个 Google Browser 是怎么划分的,表示的浏览器是什么?因为这个结果和 https://github.com/hotoo/detector 的检测结果相差很大。之前用 detector 的结果是分散的很多其他各个版本的浏览器,现在都变成了 Google Browser 4.0

报错

当引用es6语法时 报错 match 没定义过 在useragent-base.js 里 2741行加 var match;就好了

部分安卓机微信下会识别为QQ浏览器

都用的是6.3.15版本的微信,UA如下

Result for: Mozilla/5.0 (Linux; U; Android 5.1.1; zh-cn; SM-N920T Build/LMY47X) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025489 Mobile Safari/533.1 MicroMessenger/6.3.15.49_r8aff805.760 NetType/WIFI Language/zh_CN(本机UA)
Result for: Mozilla/5.0 (Linux; U; Android 4.4.4; zh-cn; OPPO R7s Build/KTU84P) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025489 Mobile Safari/533.1 MicroMessenger/6.3.15.49_r8aff805.760 NetType/WIFI Language/zh_CN(本机UA)

另一台华为的也认为是QQ浏览器,iPhone6S下倒是能认出是微信浏览器。
能否统一微信在两种平台上的浏览器判断?

手机QQ的识别的问题

看到这样一个UA:

Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_2 like Mac OS X) AppleWebKit/603.2.4 (KHTML, like Gecko) Mobile/14F89 QQ/7.1.1.440 V1_IPH_SQ_7.1.1_1_APP_A Pixel/750 Core/UIWebView NetType/WIFI QBWebViewType/1

识别成Safari了

无法匹配红米部分机型的 device.model

Mozilla/5.0 (Linux; Android 6.0.1; Redmi Note 4X Build/MMB29M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043305 Safari/537.36 MicroMessenger/6.5.8.1060 NetType/WIFI Language/zh_CN

add typescript typings?

When use in a typescript project, this lib:

  1. missing typescript typing file.
  2. cannot find @types/ua-device package.

Please help add some d.ts file info into the lib.

无法识别猎豹浏览器

Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.154 Safari/537.36 LBBROWSER
识别为
{u'browser': {u'channel': u'Nightly',
u'hidden': False,
u'name': u'Chrome',
u'stock': False,
u'version': {u'alias': None, u'original': u'42.0.2311.154'}},
u'camouflage': False,
u'device': {u'identified': False, u'type': u'desktop'},
u'engine': {u'name': u'Webkit',
u'version': {u'alias': None, u'original': u'537.36'}},
u'features': [],
u'options': {u'detectCamouflage': True, u'useFeatures': False},
u'os': {u'name': u'Windows',
u'version': {u'alias': u'8', u'original': u'6.2'}}}

Coolpad手机识别错误

Dalvik/1.6.0 (Linux; U; Android 4.4.4; Coolpad Y1 Build/KTU84P)
手机品牌应为Coolpad,ua-device识别结果为Vivo

具体手机型号判断

不错的框架,不知能否加入手机分辨率识别具体品牌系列型号功能,那样就更完美了

展示返回字段和字段解释

能不能有个完整的文档,展示下返回的字段,以及对部分字段的解释,比如browser的stock,hidden,channel。
这样使用者比较方便。免得还要去查看代码。

baiduboxapp 继续问

ua解析出来很多的baiduboxapp,看代码中写的是‘百度框’,请问百度框是什么?是百度搜索框吗?如果是的话,为什么单独列出来呢?还望解答。

锤子手机

我看在锤子手机的判别里只有SM705|SM701|YQ601|YQ603这四个型号,是不是不太够?

魅蓝note2在微信中机型识别错误

自带浏览器,识别准确

Mozilla/5.0 (Linux; Android 5.1; MZ-m2 note Build/LMY47D) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/45.0.2454.94 Mobile Safari/537.36

在微信中,识别成小米

Mozilla/5.0 (Linux; U; Android 5.1; zh-cn; m2 note Build/LMY47D) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025489 Mobile Safari/533.1 MicroMessenger/6.3.15.49_r8aff805.760 NetType/WIFI Language/zh_CN

是否可以识别出百度框的版本

输入:

var input = 'Mozilla/5.0 (Linux; Android 5.1; Coolpad 8722V Build/LMY47D) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/35.0.1916.138 Mobile Safari/537.36 T7/7.4 baiduboxapp/8.1 (Baidu; P1 5.1)';

输出:

{
    "options": {
        "useFeatures": false,
        "detectCamouflage": true
    },
    "browser": {
        "stock": false,
        "hidden": false,
        "channel": "Nightly",
        "name": "百度框",
        "version": {
            "original": "35.0.1916.138"
        }
    },
    "engine": {
        "name": "Webkit",
        "version": {
            "original": "537.36",
            "alias": null
        }
    },
    "os": {
        "name": "Android",
        "version": {
            "alias": "5.1",
            "original": "5.1"
        }
    },
    "device": {
        "type": "mobile",
        "identified": false,
        "model": "8722",
        "manufacturer": "Coolpad"
    },
    "camouflage": false,
    "features": []
}

是否可以输出手百8.1版本号呢

iOS上Chrome浏览器识别为Safari

iOS上Chrome的UA为: Mozilla/5.0 (iPhone; CPU iPhone OS 11_4 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) CriOS/67.0.3396.87 Mobile/15F79 Safari/604.1
被识别为Safari了,我看测试用例里面也有,应该也被识别错了。代码ua-device.js的615行mobile的识别到iphone或者ipad就统一为Safari有点欠妥。

iOS 手机 QQ 的 ua 貌似识别失败

类似这样的 ua:

Mozilla/5.0 (iPhone 6sp; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 MQQBrowser/7.3 Mobile/14E304 Safari/8536.25 MttCustomUA/2 QBWebViewType/1

Mozilla/5.0 (iPhone 6sp; CPU iPhone OS 9_3_5 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 MQQBrowser/7.4 Mobile/13G36 Safari/8536.25 MttCustomUA/2 QBWebViewType/1 WKType/1

被识别成 Mac OS 了, 但感觉应该是 iPhone。

iOS版Opera浏览器无法识别

iOS版Opera的UA如下:
Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) OPiOS/11.0.1.107866 Version/7.0 Mobile/14E304 Safari/9537.53
应该是可以根据OPiOS识别的,但是该库识别不了。

Meizu(魅族)系列机型识别度较差

提供UA如下

Pro 6 Plus

Mozilla/5.0 (Linux; Android 6.0.1; PRO 6 Plus Build/MMB29T; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043305 Safari/537.36 MicroMessenger/6.5.7.1041 NetType/4G Language/zh_CN

M5

Mozilla/5.0 (Linux; Android 5.1; M5 Build/LMY47D; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043408 Safari/537.36 MicroMessenger/6.5.8.1060 NetType/WIFI Language/zh_CN

M5 Note

Mozilla/5.0 (Linux; Android 6.0; M5 Note Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043305 Safari/537.36 MicroMessenger/6.5.10.1080 NetType/4G Language/zh_CN

M3X

Mozilla/5.0 (Linux; Android 6.0.1; M3X Build/MMB29U; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043305 Safari/537.36 MicroMessenger/6.5.8.1060 NetType/4G Language/zh_CN

无法识别新版本 Opera

我本机的 UA:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.75 Safari/537.36 OPR/36.0.2130.32

OPR/36.0.3130.32 可以用的吧。

报错

刚刚测试

Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_1_1 like Mac OS X; en) AppleWebKit/534.46.0 (KHTML, like Gecko) CriOS/19.0.1084.60 Mobile/9B206 Safari/7534.48.3

浏览器应该是 chrome 而不是 safari

报错

/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/ua-device/lib/useragent-base.js:5630
if (this.os.name !== 'iOS' && /AppleWebKit/([0-9]+.[0-9]+)/i.exec(ua)[1] !== /Safari/([0-9]+.[0-9]+)/i.exec(ua)[1]) {
^

TypeError: Cannot read property '1' of null
at Object.module.exports.Detected.detect (/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/ua-device/lib/useragent-base.js:5630:91)
at Object.module.exports.Detected.initialize (/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/ua-device/lib/useragent-base.js:2556:18)
at Object.module.exports.Detected (/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/ua-device/lib/useragent-base.js:2533:25)
at new module.exports (/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/ua-device/lib/ua-device.js:3:18)
at /Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/test/uatest.js:35:16
at /Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/line-reader/lib/line_reader.js:277:11
at getLine (/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/line-reader/lib/line_reader.js:166:7)
at Object.nextLine (/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/line-reader/lib/line_reader.js:183:7)
at Immediate.readNext (/Users/qitmac000475/Documents/myWorkspace/qreport_mapping/qreport_mapping/node_modules/line-reader/lib/line_reader.js:269:14)
at runCallback (timers.js:570:20)

部分安卓手机无法有效区分

魅蓝note被识别成小米m1

原因:魅族魅蓝note UA :Mozilla/5.0 (Linux; U; Android 5.1; zh-cn;m1 note Build/LMY47D) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/8.8 TBS/88888888 Mobile Safari/533.1 MicroMessenger/6.3.15.49_r8aff805.760 NetType/WIFI Language/zh_CN(本机UA)

应该是匹配到了m1 被识别成了小米m1

ua-device

ua-device里面的if else也太吓人了吧

解析结果貌似有误

从nginx日志随机挑了一条解析,结果是微信4.0(这里微信版本也应该是6.3.15.49),如果内核是QQ浏览器,那么浏览器信息应该是QQ浏览器5.4,后面的device.model=M3-5这个解析结果也比较奇怪?

Mozilla/5.0 (Linux; U; Android 5.0.1; zh-cn; M355 Build/LRX22C) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025489 Mobile Safari/533.1 MicroMessenger/6.3.15.49_r8aff805.760 NetType/WIFI Language/zh_CN

{ options: { useFeatures: false, detectCamouflage: true },
  browser:
   { stock: true,
     hidden: true,
     channel: '',
     name: '微信',
     version: { original: '4.0' } },
  engine: { name: 'Webkit', version: { original: '533.1', alias: null } },
  os:
   { name: 'Android',
     version: { alias: '5.0.1', original: '5.0.1' } },
  device: { type: 'mobile', identified: false, model: 'M3-5' },
  camouflage: false,
  features: [] }

image

华为荣耀8x设备制造商无法识别

华为荣耀8x设备制造商无法识别;UA如下:

Mozilla/5.0 (Linux; U; Android 8.1.0zh-cn; JSN-AL00a Build/HONORJSN-AL00a) AppleWebKit/537.36 (KHTML, like Gecko)Version/4.0 Chrome/57.0.2987.132 MQQBrowser/8.1 Mobile Safari/537.36

微信浏览器

华为和小米同测,用微信浏览器打开均显示为iphone

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.