TAT.finlay UA 的秘密
In 未分类 on 2015年10月31日 by view: 5,052
2

UA 的秘密

userAgent, 这种大众脸, 大家一定不陌生,平时似乎没什么用.
但是当我们需要去了解外网用户时,就会发现,非常有意义。
如果一个用户向你投诉,这个时候。
需要第一时间拿到用户环境去分析问题,于是 ua 就能派上用场了


请看下面这条 ua 信息:

扫一眼,能看出多少信息量呢, 在说明之前,我们先看看官方文档吧.
下面是谷歌开发者上关于 ua 的格式说明

 

WebView on Android

The Android 4.4 (KitKat) Chromium-based WebView adds Chrome/_version_ to the user agent string.

Old WebView UA:

WebView UA in KitKat to Lollipop

https://developer.chrome.com/multidevice/user-agent

大部分厂商,实现的 ua 描述都和以上一样样,但且看下方安卓 webview 设置 ua 的 api 描述

 

public abstract void setUserAgentString (String ua)

Added in API level 3

Sets the WebView's user-agent string. If the string is null or empty, the system default value will be used. Note that starting from KITKAT Android version, changing the user-agent while loading a web page causes WebView to initiate loading once again.

Parameters
ua new user-agent string

 

 

调用此方法,可以随意设置自己的个性 ua.

所以也有些个性厂商出现, 例如下方把自己的厂商品牌放最前面.. 这种可分析度就不太高,不过幸好量并不大

然后,我们再回头看看开头的 ua 上包含了多少信息:

大致扫一眼,我会知道,这个人是中文安卓 5.1.1 (Android 5.1.1, zh-cn), 机型是华为荣耀 SCL-TL00H(Build/HonorSCL-TL00H), 这些是约定中可看出的数据

再看后面的信息. MQQBrowser/5.4 表示是 QQ 浏览器,版本 5.4, Moblie 后面则可以看出
Safari/533.1lolapp/3.9.0.1260 这是 LOLapp 大概是掌上英雄联盟?/软件版本 
lolappcpu/armeabi-v7a 然后是设备 CPU 类型,armeabi-v7a;

因为是自定义的,所以每个不同的 app 在 ua 上带的信息量大小是不同的. 再来看一个

Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI 2S Build/JRO03L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 V1_AND_SQ_5.9.1_272_YYB_D QQ/5.9.1.2535 NetType/WIFI WebP/0.3.1 Pixel/720

这个,可以看出基本信息外,能知道,用户是在用 WIFI 上网 NetType/WIFI , 且屏幕分辨率是 Pixel/720,使用的软件是应用宝 V1_AND_SQ_5.9.1_272_YYB_D, 机型百度一下 JRO03L,发现是小米 2s..

好了,基本结构已经介绍完了,接下来看下如何用代码将所需内容提取出来


原创文章转载请注明:

转载自AlloyTeam:http://www.alloyteam.com/2015/10/uas-secret/

  1. 邓映山 2015 年 12 月 9 日

    分享一个安卓 UA 的坑:对于安卓设备检测是手机和平板。对于 iOS,手机和平板 UA 中是用 mobile 和 tablet 区分的,这个很好说。但是安卓这个就不是了,手机端是有 mobile 的,但是平板就啥都没有,所以你只能通过判断有没有 mobile 来知道是平板还是手机。然后关于 UA 解析推荐用这个库:http://faisalman.github.io/ua-parser-js/ 但是这个库对于某些安卓设备(小米,华为。。)的检测是否是手机还是平板,依旧有问题,只能自己手动去判断 UA 中是否包含 mobile。— 刚好遇到的坑,大家有需要可以看看:)

  2. willianXiaodong 2015 年 11 月 2 日

    橘子甩汁 Loading 来个 demo 看看可好

发表评论