共计 2135 个字符,预计需要花费 6 分钟才能阅读完成。
user-agent
最近整理了 user-agent 相关参数,做了大量的匹配工作,从而增加了从 user-agent 识别出浏览器、设备、手机等信息的 user-agent-util 项目。地址为:https://github.com/sekift/use…。
原项目
原项目只能识别国外浏览器和 2018 年前的设备,不能识别手机信息。其功能包括:
超过 150 种不同的浏览器;
7 种不同的浏览器类型;
超过 60 种不同的操作系统;
6 种不同的设备类型;
9 种不同的渲染引擎;
9 种不同的 Web 应用,如 HttpClient、Bot
本项目
本项目在上面项目的基础上,增加了国内常用浏览器和识别手机信息,添加了以下功能:
添加识别手机型号的功能,现共能识别多达 1300 多款手机。
添加识别手机屏幕尺寸和分辨率功能。
添加对 UC、QQ、淘宝等多款浏览器的支持。
使用
先加载 jar 包,然后创建以下代码:
UserAgent userAgent = UserAgent.parseUserAgentString(“Mozilla/5.0
(Linux; U; Android 5.1.1; zh-cn; SM-G6000 Build/LMY47X)
AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 UCBrowser/1.0.0.100
U3/0.8.0 Mobile Safari/534.30 AliApp(TB/6.2.3) WindVane/8.0.0 720X1280
GCanvas/1.4.2.21”);
System.out.println(“ 浏览器名:” + userAgent.getBrowser().getName());
System.out.println(“ 浏览器类型:” + userAgent.getBrowser().getBrowserType());
System.out.println(“ 浏览器家族:” + userAgent.getBrowser().getGroup());
System.out.println(“ 浏览器生产厂商:” + userAgent.getBrowser().getManufacturer());
System.out.println(“ 浏览器使用的渲染引擎:” + userAgent.getBrowser().getRenderingEngine());
System.out.println(“ 浏览器版本:” + userAgent.getBrowserVersion());
System.out.println(“ 操作系统名:” + userAgent.getOperatingSystem().getName());
System.out.println(“ 操作系统类型:” + userAgent.getOperatingSystem().getDeviceType());
System.out.println(“ 操作系统家族:” + userAgent.getOperatingSystem().getGroup());
System.out.println(“ 操作系统生产厂商:” + userAgent.getOperatingSystem().getManufacturer().toString());
System.out.println(“ 手机型号:” + userAgent.getMobile().getName());
System.out.println(“ 手机屏幕尺寸:” + userAgent.getMobile().getScreenSize().getName());
System.out.println(“ 手机屏幕分辨率:” + userAgent.getMobile().getResolution().getName());
System.out.println(“ 手机识别码:” + userAgent.getMobile().getMobileId());
System.out.println(“ 手机固件版本:” + userAgent.getMobile().getMobileVersion());
System.out.println(“ 手机生产厂商:” + userAgent.getMobile().getMobileBrand().getName());
System.out.println(“ 手机家族:” + userAgent.getMobile().getGroup());
结果:
浏览器名:UCBrowser
浏览器类型:WEB_BROWSER
浏览器家族:UC
浏览器生产厂商:ALIBABA
浏览器使用的渲染引擎:GECKO
浏览器版本:1.0.0.100
操作系统名:Android 5.x
操作系统类型:MOBILE
操作系统家族:ANDROID
操作系统生产厂商:GOOGLE
手机型号: 三星 Galaxy On7
手机屏幕尺寸:5.5
手机屏幕分辨率:720×1280
手机识别码:sm-g6000
手机固件版本:lmy47x
手机生产厂商: 三星
手机家族:SAMSUNG
欢迎使用
本项目地址为:https://github.com/sekift/use…。欢迎使用、赞星和反馈。