@chyoo1991
2015-09-07T05:43:33.000000Z
字数 1041
阅读 1293
目前手搜有三种版本:
提示:
ua
/ac
/qua
/x_uc_ua
已经转换成小写。
返回彩板[重构之后默认返回触版]
系统/浏览器 | 特征 |
---|---|
UC浏览器 | ua 不存在,且ac 或qua 含uc |
WML设备 | ac 中含有wml |
塞班系统 | ua 中含有nokiac 或nokiax 或nokia5 或symbian |
J2me | ua 中含有j2me |
索爱w595c | ua 中含有sonyericssonw595c |
UC灵动 | ua 和x_uc_ua 中都含u2 或 ua 中含u2 且x_uc_ua 中含u3 |
wurfl | ua 检测结果preferred_markup 以wml 开头 |
wurfl | ua 检测结果preferred_markup 不以html_wi_w3 和html_web 开头,且wml_1_2 的值为true |
未知 | ua 中含有maui_wap 或untrusted |
系统/浏览器 | 特征 |
---|---|
安卓QQ浏览器 | ![]() |
UCWeb | ua 中含有ucweb7 或(linux; u; 2.2.1; zh-cn; sch-i909; 480*800) ucweb |
WinCE | ua 中含有windows ce |
Win Phone | ua 中含有windows phone 或wp7 |
Opera浏览器 | ua 中含有opera |
iOS UCWeb | ua 中含有ios 或ipad 或iphone ,且含有ucweb |
低版本安卓 | ua 中含有android 1. 或android 2.0 或android 2.1 或android/1. 或android/2.0 或android/2.1 |
由于更改后默认返回触版,因此不再整理这部分逻辑。其逻辑相对复杂。
- 匹配字符串与具体的类[继承OS/Browser/Brand类]对应[可根据新的匹配字符串添加新的对应类]
- 具体的类通过列表对应跳转版本[可以随时添加对应关系]
- 根据传入的ua/ac/qua/x_uc_ua等字符串直接创建设备[OS/Browser/Brand类的实例根据1中的规则创建]
- 根据设备中的OS/Browser/Brand和2中的列表实现具体的跳转逻辑。