@chyoo1991
2015-09-07T05:43:33.000000Z
字数 1041
阅读 1364
目前手搜有三种版本:
提示:
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中的列表实现具体的跳转逻辑。