source: trip-planner-front/node_modules/ua-parser-js/test/device-test.json@ 6c1585f

Last change on this file since 6c1585f was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 85.7 KB
Line 
1[{
2 "desc": "ASUS Nexus 7",
3 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; Nexus 7 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.99 Safari/537.36",
4 "expect": {
5 "vendor": "ASUS",
6 "model": "Nexus 7",
7 "type": "tablet"
8 }
9 },
10 {
11 "desc": "ASUS Padfone",
12 "ua": "Mozilla/5.0 (Linux; Android 4.1.1; PadFone 2 Build/JRO03L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.117 Safari/537.36",
13 "expect": {
14 "vendor": "ASUS",
15 "model": "PadFone",
16 "type": "tablet"
17 }
18 },
19 {
20 "desc": "ASUS ZenPad 10",
21 "ua": "Mozilla/5.0 (Linux; Android 6.0; P00C Build/MRA58K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Safari/537.36",
22 "expect": {
23 "vendor": "ASUS",
24 "model": "P00C",
25 "type": "tablet"
26 }
27 },
28 {
29 "desc": "ASUS ZenPad Z8s",
30 "ua": "Mozilla/5.0 (Linux; Android 7.0; ASUS_P00J) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.111 Safari/537.36\n",
31 "expect": {
32 "vendor": "ASUS",
33 "model": "P00J",
34 "type": "tablet"
35 }
36 },
37 {
38 "desc": "ASUS ROG",
39 "ua": "Mozilla/5.0 (Linux; Android 8.1; ZS600KL Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.126 Mobile Safari/537.36",
40 "expect": {
41 "vendor": "ASUS",
42 "model": "ZS600KL",
43 "type": "mobile"
44 }
45 },
46 {
47 "desc": "ASUS ROG II",
48 "ua": "Mozilla/5.0 (Linux; Android 9; ASUS_I001DA Build/PKQ1.190414.001; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36",
49 "expect": {
50 "vendor": "ASUS",
51 "model": "I001DA",
52 "type": "mobile"
53 }
54 },
55 {
56 "desc": "ASUS Zenfone 2",
57 "ua": "Mozilla/5.0 (Linux; Android 5.0; ASUS ZenFone 2 Build/LRX22C) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/37.0.0.0 Mobile Safari/537.36",
58 "expect": {
59 "vendor": "ASUS",
60 "model": "ZenFone 2",
61 "type": "mobile"
62 }
63 },
64 {
65 "desc": "ASUS Zenfone 3 Deluxe",
66 "ua": "Mozilla/5.0 (Linux; Android 6.0; ASUS_Z016D Build/MXB48T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.132 Mobile Safari/537.36",
67 "expect": {
68 "vendor": "ASUS",
69 "model": "Z016D",
70 "type": "mobile"
71 }
72 },
73 {
74 "desc": "ASUS Zenfone 5",
75 "ua": "Mozilla/5.0 (Linux; Android 8.0; ZE620KL Build/OPR1.170623.032) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36",
76 "expect": {
77 "vendor": "ASUS",
78 "model": "ZE620KL",
79 "type": "mobile"
80 }
81 },
82 {
83 "desc": "ASUS Zenfone 7",
84 "ua": "Mozilla/5.0 (Linux; Android 10; ASUS_I002D) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.81 Mobile Safari/537.36",
85 "expect": {
86 "vendor": "ASUS",
87 "model": "I002D",
88 "type": "mobile"
89 }
90 },
91 {
92 "desc": "ASUS Zenfone 7 Pro",
93 "ua": "Mozilla/5.0 (Linux; Android 10; ZS671KS) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Mobile Safari/537.36",
94 "expect": {
95 "vendor": "ASUS",
96 "model": "ZS671KS",
97 "type": "mobile"
98 }
99 },
100 {
101 "desc": "ASUS Zenfone Max Pro (M1)",
102 "ua": "Mozilla/5.0 (Linux; Android 8.1; ASUS_X00TD Build/OPM1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.137 Mobile Safari/537.36",
103 "expect": {
104 "vendor": "ASUS",
105 "model": "X00TD",
106 "type": "mobile"
107 }
108 },
109 {
110 "desc": "ASUS Zenfone Max M2",
111 "ua": "Mozilla/5.0 (Linux; Android 8.1; ASUS_X01AD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36",
112 "expect": {
113 "vendor": "ASUS",
114 "model": "X01AD",
115 "type": "mobile"
116 }
117 },
118 {
119 "desc": "ASUS Zenfone Max Pro M2",
120 "ua": "Mozilla/5.0 (Linux; Android 8.1; ASUS_X01BDA) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.99 Mobile Safari/537.36",
121 "expect": {
122 "vendor": "ASUS",
123 "model": "X01BDA",
124 "type": "mobile"
125 }
126 },
127 {
128 "desc": "ASUS Zenfone Go",
129 "ua": "Mozilla/5.0 (Linux; Android 6.0; ASUS_X009DA Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Mobile Safari/537.36",
130 "expect": {
131 "vendor": "ASUS",
132 "model": "X009DA",
133 "type": "mobile"
134 }
135 },
136 {
137 "desc": "Acer Iconia A1-810",
138 "ua": "Mozilla/5.0 (Linux; Android 4.2.2; A1-810 Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.109 Safari/537.36",
139 "expect": {
140 "vendor": "Acer",
141 "model": "A1-810",
142 "type": "tablet"
143 }
144 },
145 {
146 "desc": "BlackBerry Priv",
147 "ua": "User-Agent: Mozilla/5.0 (Linux; Android 5.1.1; STV100-1 Build/LMY47V; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/46.0.2490.76 Mobile Safari/537.36",
148 "expect": {
149 "vendor": "BlackBerry",
150 "model": "STV100-1",
151 "type": "mobile"
152 }
153 },
154 {
155 "desc": "BlackBerry Keyone",
156 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; BBB100-1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.111 Mobile Safari/537.36",
157 "expect": {
158 "vendor": "BlackBerry",
159 "model": "BBB100-1",
160 "type": "mobile"
161 }
162 },
163 {
164 "desc": "BlackBerry Key2",
165 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; BBF100-1 Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.91 Mobile Safari/537.36",
166 "expect": {
167 "vendor": "BlackBerry",
168 "model": "BBF100-1",
169 "type": "mobile"
170 }
171 },
172 {
173 "desc": "BlackBerry Key2 LE",
174 "ua": "User-Agent: Mozilla/5.0 (Linux; Android 8.1.0; BBE100-1 Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497 Mobile Safari/537.36",
175 "expect": {
176 "vendor": "BlackBerry",
177 "model": "BBE100-1",
178 "type": "mobile"
179 }
180 },
181 {
182 "desc": "Desktop (IE11 with Tablet string)",
183 "ua": "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; GWX:MANAGED; rv:11.0) like Gecko",
184 "expect": {
185 "vendor": "undefined",
186 "model": "undefined",
187 "type": "undefined"
188 }
189 },
190 {
191 "desc": "Essential PH-1",
192 "ua": "Mozilla/5.0 (Linux; Android 9; PH-1 Build/PPR1.180905.036) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.86 Mobile Safari/537.36",
193 "expect": {
194 "vendor": "Essential",
195 "model": "PH-1",
196 "type": "mobile"
197 }
198 },
199 {
200 "desc": "Fairphone 1U",
201 "ua": "Mozilla/5.0 (Linux; U; Android 4.2.2; FP1U Build/JDQ39) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
202 "expect": {
203 "vendor": "Fairphone",
204 "model": "FP1U",
205 "type": "mobile"
206 }
207 },
208 {
209 "desc": "HTC Desire 820",
210 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; HTC Desire 820 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36",
211 "expect": {
212 "vendor": "HTC",
213 "model": "Desire 820",
214 "type": "mobile"
215 }
216 },
217 {
218 "desc": "HTC Evo Shift 4G",
219 "ua": "Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; Sprint APA7373KT Build/GRJ22) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0",
220 "expect": {
221 "vendor": "Sprint",
222 "model": "APA7373KT",
223 "type": "mobile"
224 }
225 },
226 {
227 "desc": "HTC Nexus 9",
228 "ua": "Mozilla/5.0 (Linux; Android 5.0; Nexus 9 Build/LRX21R) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Mobile Crosswalk/7.36.154.13 Safari/537.36",
229 "expect": {
230 "vendor": "HTC",
231 "model": "Nexus 9",
232 "type": "tablet"
233 }
234 },
235 {
236 "desc": "Huawei Honor",
237 "ua": "Mozilla/5.0 (Linux; U; Android 2.3; xx-xx; U8860 Build/HuaweiU8860) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
238 "expect": {
239 "vendor": "Huawei",
240 "model": "U8860",
241 "type": "mobile"
242 }
243 },
244 {
245 "desc": "Huawei Nexus 6P",
246 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 6P Build/MTC19V) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.81 Mobile Safari/537",
247 "expect": {
248 "vendor": "Huawei",
249 "model": "Nexus 6P",
250 "type": "mobile"
251 }
252 },
253 {
254 "desc": "Huawei P10",
255 "ua": "Mozilla/5.0 (Linux; Android 7.0; VTR-L09 Build/HUAWEIVTR-L09; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/56.0.2924.87 Mobile Safari/537.36",
256 "expect": {
257 "vendor": "Huawei",
258 "model": "VTR-L09",
259 "type": "mobile"
260 }
261 },
262 {
263 "desc": "Huawei Y3II",
264 "ua": "Mozilla/5.0 (Linux; U; Android 5.1; xx-xx; HUAWEI LUA-L03 Build/HUAWEILUA-L03) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/39.0.0.0 Mobile Safari/537.36",
265 "expect": {
266 "vendor": "Huawei",
267 "model": "LUA-L03",
268 "type": "mobile"
269 }
270 },
271 {
272 "desc": "iPad using UCBrowser",
273 "ua": "Mozilla/5.0 (iPad; U; CPU OS 11_2 like Mac OS X; zh-CN; iPad5,3) AppleWebKit/534.46 (KHTML, like Gecko) UCBrowser/3.0.1.776 U3/ Mobile/10A403 Safari/7543.48.3",
274 "expect": {
275 "vendor": "Apple",
276 "model": "iPad",
277 "type": "tablet"
278 }
279 },
280 {
281 "desc": "iPad Air",
282 "ua": "Mozilla/5.0 (iPad; CPU OS 12_4_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPad4,1;FBMD/iPad;FBSN/iOS;FBSV/12.4.5;FBSS/2;FBID/tablet;FBLC/en_US;FBOP/5;FBCR/]",
283 "expect": {
284 "vendor": "Apple",
285 "model": "iPad",
286 "type": "tablet"
287 }
288 },
289 {
290 "desc": "iPad using Facebook Browser",
291 "ua": "Mozilla/5.0 (iPad; CPU OS 14_4_2 like Mac OS X) WebKit/8610 (KHTML, like Gecko) Mobile/18D70 [FBAN/FBIOS;FBDV/iPad7,11;FBMD/iPad;FBSN/iOS;FBSV/14.4.2;FBSS/2;FBID/tablet;FBLC/en_US;FBOP/5]",
292 "expect": {
293 "vendor": "Apple",
294 "model": "iPad",
295 "type": "tablet"
296 }
297 },
298 {
299 "desc": "iPod",
300 "ua": "Mozilla/5.0 (iPod touch; CPU iPhone OS 7_0_4 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11B554a Safari/9537.53",
301 "expect": {
302 "vendor": "Apple",
303 "model": "iPod touch",
304 "type": "mobile"
305 }
306 },
307 {
308 "desc": "Lenovo Tab 2",
309 "ua": "Mozilla/5.0 (Linux; Android 5.0.1; Lenovo TAB 2 A7-30HC Build/LRX21M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.157 Safari/537.36",
310 "expect": {
311 "vendor": "Lenovo",
312 "model": "TAB 2 A7",
313 "type": "tablet"
314 }
315 },
316 {
317 "desc": "Lenovo Phone",
318 "ua": "Mozilla/5.0 (Linux; Android 6.0; Lenovo PB2-650M Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/89.0.4389.105 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/311.0.0.44.117;]",
319 "expect": {
320 "vendor": "Lenovo",
321 "model": "PB2-650M",
322 "type": "mobile"
323 }
324 },
325 {
326 "desc": "Lenovo Tab 3 Pro",
327 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; Lenovo YT3-X90F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.99 Safari/537.36",
328 "expect": {
329 "vendor": "Lenovo",
330 "model": "YT3-X90F",
331 "type": "tablet"
332 }
333 },
334 {
335 "desc": "Lenovo Tab 4",
336 "ua": "Mozilla/5.0 (Linux; Android 7.1.1; Lenovo TB-X304F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.99 Safari/537.36",
337 "expect": {
338 "vendor": "Lenovo",
339 "model": "TB-X304F",
340 "type": "tablet"
341 }
342 },
343 {
344 "desc": "Lenovo Tab 4",
345 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; Lenovo TAB 2 A7-30HC) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36",
346 "expect": {
347 "vendor": "Lenovo",
348 "model": "TAB 2 A7",
349 "type": "tablet"
350 }
351 },
352 {
353 "desc": "Lenovo Tab 7 Essential",
354 "ua": "Mozilla/5.0 (Linux; Android 7.0; Lenovo TB-7304X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36",
355 "expect": {
356 "vendor": "Lenovo",
357 "model": "TB-7304X",
358 "type": "tablet"
359 }
360 },
361 {
362 "desc": "Lenovo Tab M10",
363 "ua": "Mozilla/5.0 (Linux; arm_64; Android 9; Lenovo TB-X606F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.127 YaBrowser/20.9.4.99.01 Safari/537.36",
364 "expect": {
365 "vendor": "Lenovo",
366 "model": "TB-X606F",
367 "type": "tablet"
368 }
369 },
370 {
371 "desc": "LG K500",
372 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; LG-K500 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36",
373 "expect": {
374 "vendor": "LG",
375 "model": "K500",
376 "type": "mobile"
377 }
378 },
379 {
380 "desc": "LG Nexus 4",
381 "ua": "Mozilla/5.0 (Linux; Android 4.2.1; Nexus 4 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19",
382 "expect": {
383 "vendor": "LG",
384 "model": "Nexus 4",
385 "type": "mobile"
386 }
387 },
388 {
389 "desc": "LG Nexus 4",
390 "ua": "Mozilla/5.0 (Linux; U; Android 4.3; en-us; Google Nexus 4 - 4.3 - API 18 - 768x1280 Build/JLS36G) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
391 "expect": {
392 "vendor": "LG",
393 "model": "Nexus 4",
394 "type": "mobile"
395 }
396 },
397 {
398 "desc": "LG Nexus 5",
399 "ua": "Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19",
400 "expect": {
401 "vendor": "LG",
402 "model": "Nexus 5",
403 "type": "mobile"
404 }
405 },
406 {
407 "desc": "LG Wing",
408 "ua": "Mozilla/5.0 (Linux; Android 10; LM-F100N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.101 Mobile Safari/537.36",
409 "expect": {
410 "vendor": "LG",
411 "model": "LM-F100N",
412 "type": "mobile"
413 }
414 },
415 {
416 "desc": "LG Smart TV",
417 "ua": "Mozilla/5.0 (DirectFB; U; Linux mips; en) AppleWebKit/528.5+ (KHTML, like Gecko, Safari/528.5+) LG Browser (; LG NetCast.TV-2011)",
418 "expect": {
419 "vendor": "LG",
420 "model": "undefined",
421 "type": "smarttv"
422 }
423 },
424 {
425 "desc": "LG Smart TV",
426 "ua": "Mozilla/5.0 (Linux; NetCast; U) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/53.0.2785 34 Safari/537.31 SmartTV/8.5",
427 "expect": {
428 "vendor": "LG",
429 "model": "undefined",
430 "type": "smarttv"
431 }
432 },
433 {
434 "desc": "Meizu M5 Note",
435 "ua": "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/043024 Safari/537.36 MicroMessenger/6.5.7.1040 NetType/WIFI Language/zh_CN",
436 "expect": {
437 "vendor": "Meizu",
438 "model": "M5 Note",
439 "type": "mobile"
440 }
441 },
442 {
443 "desc": "Microsoft Lumia 950",
444 "ua": "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/13.10586",
445 "expect": {
446 "vendor": "Microsoft",
447 "model": "Lumia 950",
448 "type": "mobile"
449 }
450 },
451 {
452 "desc": "Microsoft Surface Duo",
453 "ua": "Dalvik/2.1.0 (Linux; U; Android 10; Surface Duo Build/2020.1014.61)",
454 "expect": {
455 "vendor": "Microsoft",
456 "model": "Surface Duo",
457 "type": "tablet"
458 }
459 },
460 {
461 "desc": "Motorola Moto X",
462 "ua": "Mozilla/5.0 (Linux; Android 4.4.4; XT1097 Build/KXE21.187-38) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.109 Mobile Safari/537.36",
463 "expect": {
464 "vendor": "Motorola",
465 "model": "XT1097",
466 "type": "mobile"
467 }
468 },
469 {
470 "desc" : "Meizu M3S",
471 "ua" : "Mozilla/5.0 (X11; Linux; Android 5.1; MZ-M3s Build/LMY47I) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrom/45.0.2454.94 Mobile Safari/537.36",
472 "expect" :
473 {
474 "vendor" : "Meizu",
475 "model" : "M3s",
476 "type" : "mobile"
477 }
478 },
479 {
480 "desc" : "Microsoft Lumia 950",
481 "ua" : "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/13.10586",
482 "expect" :
483 {
484 "vendor" : "Microsoft",
485 "model" : "Lumia 950",
486 "type" : "mobile"
487 }
488 },
489 {
490 "desc": "Motorola Nexus 6",
491 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; Nexus 6 Build/LYZ28E) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.20 Mobile Safari/537.36",
492 "expect": {
493 "vendor": "Motorola",
494 "model": "Nexus 6",
495 "type": "mobile"
496 }
497 },
498 {
499 "desc": "Motorola Droid RAZR 4G",
500 "ua": "Mozilla/5.0 (Linux; U; Android 2.3; xx-xx; DROID RAZR 4G Build/6.5.1-73_DHD-11_M1-29) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
501 "expect": {
502 "vendor": "Motorola",
503 "model": "DROID RAZR 4G",
504 "type": "mobile"
505 }
506 },
507 {
508 "desc": "Motorola RAZR 2019",
509 "ua": "Mozilla/5.0 (Linux; Android 9; motorola razr) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/11.1 Chrome/75.0.3770.143 Mobile Safari/537.36",
510 "expect": {
511 "vendor": "Motorola",
512 "model": "razr",
513 "type": "mobile"
514 }
515 },
516 {
517 "desc": "iPhone",
518 "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 7_0 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11A465 Safari/9537.53",
519 "expect": {
520 "vendor": "Apple",
521 "model": "iPhone",
522 "type": "mobile"
523 }
524 },
525 {
526 "desc": "iPhone SE",
527 "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPhone8,4;FBMD/iPhone;FBSN/iOS;FBSV/13.3.1;FBSS/2;FBID/phone;FBLC/en_US;FBOP/5;FBCR/]",
528 "expect": {
529 "vendor": "Apple",
530 "model": "iPhone",
531 "type": "mobile"
532 }
533 },
534 {
535 "desc": "iPhone SE using Facebook App",
536 "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPhone8,4;FBMD/iPhone;FBSN/iOS;FBSV/13.3.1;FBSS/2;FBID/phone;FBLC/en_US;FBOP/5;FBCR/]",
537 "expect": {
538 "vendor": "Apple",
539 "model": "iPhone",
540 "type": "mobile"
541 }
542 },
543 {
544 "desc": "iPhone 11 Pro Max",
545 "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPhone12,5;FBMD/iPhone;FBSN/iOS;FBSV/13.3.1;FBSS/3;FBID/phone;FBLC/en_US;FBOP/5;FBCR/]",
546 "expect": {
547 "vendor": "Apple",
548 "model": "iPhone",
549 "type": "mobile"
550 }
551 },
552 {
553 "desc": "iPhone XS",
554 "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 [FBAN/FBIOS;FBDV/iPhone11,2;FBMD/iPhone;FBSN/iOS;FBSV/13.3.1;FBSS/3;FBID/phone;FBLC/en_US;FBOP/5;FBCR/]",
555 "expect": {
556 "vendor": "Apple",
557 "model": "iPhone",
558 "type": "mobile"
559 }
560 },
561 {
562 "desc": "iPod touch",
563 "ua": "Mozilla/5.0 (iPod touch; CPU iPhone OS 7_0_2 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11A501 Safari/9537.53",
564 "expect": {
565 "vendor": "Apple",
566 "model": "iPod touch",
567 "type": "mobile"
568 }
569 },
570 {
571 "desc": "Moto X",
572 "ua": "Mozilla/5.0 (Linux; U; Android 4.2; xx-xx; XT1058 Build/13.9.0Q2.X-70-GHOST-ATT_LE-2) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
573 "expect": {
574 "vendor": "Motorola",
575 "model": "XT1058",
576 "type": "mobile"
577 }
578 },
579 {
580 "desc": "Motorola Moto g(6) Play",
581 "ua": "Mozilla/5.0 (Linux; Android 9; moto g(6) play) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.136 Mobile Safari/537.36",
582 "expect": {
583 "vendor": "Motorola",
584 "model": "moto g(6) play",
585 "type": "mobile"
586 }
587 },
588 {
589 "desc": "Motorola Moto g(7) Supra",
590 "ua": "Mozilla/5.0 (Linux; Android 9; moto g(7) supra Build/PCOS29.114-134-2; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/73.0.3683.90 Mobile Safari/537.36",
591 "expect": {
592 "vendor": "Motorola",
593 "model": "moto g(7) supra",
594 "type": "mobile"
595 }
596 },
597 {
598 "desc": "Motorola Moto E",
599 "ua": "Mozilla/5.0 (Linux; Android 7.1.1; Moto E (4) Build/NDQS26.69-64-11-7; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/56.0.2924.87 Mobile Safari/537.36",
600 "expect": {
601 "vendor": "Motorola",
602 "model": "Moto E (4)",
603 "type": "mobile"
604 }
605 },
606 {
607 "desc": "Nokia3xx",
608 "ua": "Nokia303/14.87 CLDC-1.1",
609 "expect": {
610 "vendor": "Nokia",
611 "model": "303",
612 "type": "mobile"
613 }
614 },
615 {
616 "desc": "Nokia 3.2",
617 "ua": "Mozilla/5.0 (Linux; Android 10; Nokia 3.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Mobile Safari/537.36",
618 "expect": {
619 "vendor": "Nokia",
620 "model": "3.2",
621 "type": "mobile"
622 }
623 },
624 {
625 "desc": "Nokia N9",
626 "ua": "Mozilla/5.0 (MeeGo; NokiaN9) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13",
627 "expect": {
628 "vendor": "Nokia",
629 "model": "N9",
630 "type": "mobile"
631 }
632 },
633 {
634 "desc": "Nokia 2720 Flip",
635 "ua": "Mozilla/5.0 (Mobile; Nokia_2720_Flip; rv:48.0) Gecko/48.0 Firefox/48.0 KAIOS/2.5.2",
636 "expect": {
637 "vendor": "Nokia",
638 "model": "2720 Flip",
639 "type": "mobile"
640 }
641 },
642 {
643 "desc": "OnePlus One",
644 "ua": "Mozilla/5.0 (Linux; Android 4.4.4; A0001 Build/KTU84Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.59 Mobile Safari/537.36",
645 "expect": {
646 "vendor": "OnePlus",
647 "model": "1",
648 "type": "mobile"
649 }
650 },
651 {
652 "desc": "OnePlus One",
653 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; OnePlus One A0001 Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.117 Mobile Safari/537.36",
654 "expect": {
655 "vendor": "OnePlus",
656 "model": "1",
657 "type": "mobile"
658 }
659 },
660 {
661 "desc": "OnePlus 3",
662 "ua": "Mozilla/5.0 (Linux; Android 7.1.1; ONEPLUS A3000 Build/NMF26F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.98 Mobile Safari/537.36",
663 "expect": {
664 "vendor": "OnePlus",
665 "model": "A3000",
666 "type": "mobile"
667 }
668 },
669 {
670 "desc": "OnePlus 6",
671 "ua": "Mozilla/5.0 (Linux; Android 9; ONEPLUS A6003) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.89 Mobile Safari/537.36",
672 "expect": {
673 "vendor": "OnePlus",
674 "model": "A6003",
675 "type": "mobile"
676 }
677 },
678 {
679 "desc": "OnePlus 6T",
680 "ua": "Mozilla/5.0 (Linux; Android 9; ONEPLUS A6010) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.96 Mobile Safari/537.36",
681 "expect": {
682 "vendor": "OnePlus",
683 "model": "A6010",
684 "type": "mobile"
685 }
686 },
687 {
688 "desc": "OnePlus 8T",
689 "ua": "Mozilla/5.0 (Linux; Android 11; KB2005) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.127 Mobile Safari/537.36",
690 "expect": {
691 "vendor": "OnePlus",
692 "model": "KB2005",
693 "type": "mobile"
694 }
695 },
696 {
697 "desc": "OnePlus 8 Pro",
698 "ua": "Mozilla/5.0 (Linux; Android 10; IN2025) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.119 Mobile Safari/537.36",
699 "expect": {
700 "vendor": "OnePlus",
701 "model": "IN2025",
702 "type": "mobile"
703 }
704 },
705 {
706 "desc": "OnePlus Nord N100",
707 "ua": "Mozilla/5.0 (Linux; Android 10; BE2015 Build/QKQ1.200719.002; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.106 Mobile Safari/537.36",
708 "expect": {
709 "vendor": "OnePlus",
710 "model": "BE2015",
711 "type": "mobile"
712 }
713 },
714 {
715 "desc": "OnePlus Nord N10 5G",
716 "ua": "Mozilla/5.0 (Linux; Android 10; BE2029) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.185 Mobile Safari/537.36",
717 "expect": {
718 "vendor": "OnePlus",
719 "model": "BE2029",
720 "type": "mobile"
721 }
722 },
723 {
724 "desc": "OPPO Neo",
725 "ua": "Mozilla/5.0 (Linux; U; Android 4.2.2; zh-cn; R831T Build/JDQ39) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 OppoBrowser/3.3.2 Mobile Safari/534.30",
726 "expect": {
727 "vendor": "OPPO",
728 "model": "R831T",
729 "type": "mobile"
730 }
731 },
732 {
733 "desc": "OPPO R7s",
734 "ua": "Mozilla/5.0 (Linux; U; Android 4.4.4; zh-cn; OPPO R7s Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko)Version/4.0 Chrome/37.0.0.0 MQQBrowser/7.1 Mobile Safari/537.36",
735 "expect": {
736 "vendor": "OPPO",
737 "model": "R7s",
738 "type": "mobile"
739 }
740 },
741 {
742 "desc": "OPPO A3s",
743 "ua": "Mozilla/5.0 (Linux; Android 8.1; CPH1803 Build/OPM1.171019.026; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 Mobile Safari/537.36",
744 "expect": {
745 "vendor": "OPPO",
746 "model": "CPH1803",
747 "type": "mobile"
748 }
749 },
750 {
751 "desc": "OPPO A12",
752 "ua": "Mozilla/5.0 (Linux; Android 9; CPH2083) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.116 Mobile Safari/537.36",
753 "expect": {
754 "vendor": "OPPO",
755 "model": "CPH2083",
756 "type": "mobile"
757 }
758 },
759 {
760 "desc": "OPPO Reno",
761 "ua": "Mozilla/5.0 (Linux; Android 9; PCAT00 Build/PKQ1.190101.001; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.110 Mobile Safari/537.36",
762 "expect": {
763 "vendor": "OPPO",
764 "model": "PCAT00",
765 "type": "mobile"
766 }
767 },
768 {
769 "desc": "OPPO Reno3 Pro 5G",
770 "ua": "Mozilla/5.0 (Linux; Android 10; PCLM50) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.117 Mobile Safari/537.36",
771 "expect": {
772 "vendor": "OPPO",
773 "model": "PCLM50",
774 "type": "mobile"
775 }
776 },
777 {
778 "desc": "OPPO Reno4 SE",
779 "ua": "Mozilla/5.0 (Linux; U; Android 10; xx-xx; PEAM00 Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36",
780 "expect": {
781 "vendor": "OPPO",
782 "model": "PEAM00",
783 "type": "mobile"
784 }
785 },
786 {
787 "desc": "OPPO Reno4 5G",
788 "ua": "Mozilla/5.0 (Linux; Android 10; PDPM00 Build/QKQ1.200216.002; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/76.0.3809.89 Mobile Safari/537.36",
789 "expect": {
790 "vendor": "OPPO",
791 "model": "PDPM00",
792 "type": "mobile"
793 }
794 },
795 {
796 "desc": "OPPO Reno4 Pro 5G",
797 "ua": "Mozilla/5.0 (Linux; U; Android 10; xx-xx; PDNT00 Build/QKQ1.200216.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36",
798 "expect": {
799 "vendor": "OPPO",
800 "model": "PDNT00",
801 "type": "mobile"
802 }
803 },
804 {
805 "desc": "OPPO Find X",
806 "ua": "Mozilla/5.0 (Linux; Android 8.1; PAFM00 Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Mobile Safari/537.36",
807 "expect": {
808 "vendor": "OPPO",
809 "model": "PAFM00",
810 "type": "mobile"
811 }
812 },
813 {
814 "desc": "OPPO Find 7a",
815 "ua": "Mozilla/5.0 (Linux; U; Android 4.3; xx-xx; X9007 Build/JLS36C) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
816 "expect": {
817 "vendor": "OPPO",
818 "model": "X9007",
819 "type": "mobile"
820 }
821 },
822 {
823 "desc": "Realme C1",
824 "ua": "Mozilla/5.0 (Linux; Android 8.1; RMX1811 Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.126 Mobile Safari/537.36",
825 "expect": {
826 "vendor": "Realme",
827 "model": "RMX1811",
828 "type": "mobile"
829 }
830 },
831 {
832 "desc": "Realme Narzo 20",
833 "ua": "Mozilla/5.0 (Linux; U; Android 10; xx-xx; RMX2193 Build/QP1A.190711.020) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.80 Mobile Safari/537.36",
834 "expect": {
835 "vendor": "Realme",
836 "model": "RMX2193",
837 "type": "mobile"
838 }
839 },
840 {
841 "desc": "Philips SmartTV",
842 "ua": "Opera/9.80 HbbTV/1.1.1 (; Philips; ; ; ; ) NETTV/4.0.2; en) Version/11.60",
843 "expect": {
844 "vendor": "Philips",
845 "model": "",
846 "type": "smarttv"
847 }
848 },
849 {
850 "desc": "Kindle Fire HD",
851 "ua": "Mozilla/5.0 (Linux; U; Android 4.0.3; en-us; KFTT Build/IML74K) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.4 Mobile Safari/535.19 Silk-Accelerated=true",
852 "expect": {
853 "vendor": "Amazon",
854 "model": "KFTT",
855 "type": "tablet"
856 }
857 },
858 {
859 "desc": "Kindle Fire HD",
860 "ua": "Mozilla/5.0 (Linux; U; Android 4.0.3; en-us; KFTT) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.4 Mobile Safari/535.19 Silk-Accelerated=true",
861 "expect": {
862 "vendor": "Amazon",
863 "model": "KFTT",
864 "type": "tablet"
865 }
866 },
867 {
868 "desc": "Samsung Galaxy A21s",
869 "ua": "Mozilla/5.0 (Linux; Android 10; SAMSUNG SM-A217F) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/11.0 Chrome/75.0.3770.143 Mobile Safari/537.36",
870 "expect": {
871 "vendor": "Samsung",
872 "model": "SM-A217F",
873 "type": "mobile"
874 }
875 },
876 {
877 "desc": "Samsung Galaxy A31",
878 "ua": "Mozilla/5.0 (Linux; Android 10; SM-A315G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36",
879 "expect": {
880 "vendor": "Samsung",
881 "model": "SM-A315G",
882 "type": "mobile"
883 }
884 },
885 {
886 "desc": "Samsung Galaxy A50",
887 "ua": "Mozilla/5.0 (Linux; Android 9; SM-A505F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.105 Mobile Safari/537.36",
888 "expect": {
889 "vendor": "Samsung",
890 "model": "SM-A505F",
891 "type": "mobile"
892 }
893 },
894 {
895 "desc": "Samsung Galaxy A80",
896 "ua": "Mozilla/5.0 (Linux; Android 9; SM-A805F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.112 Mobile Safari/537.36",
897 "expect": {
898 "vendor": "Samsung",
899 "model": "SM-A805F",
900 "type": "mobile"
901 }
902 },
903 {
904 "desc": "Samsung Galaxy Fold",
905 "ua": "Mozilla/5.0 (Linux; Android 9; SAMSUNG SM-F900U Build/PPR1.180610.011) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/9.2 Chrome/67.0.3396.87 Mobile Safari/537.36",
906 "expect": {
907 "vendor": "Samsung",
908 "model": "SM-F900U",
909 "type": "mobile"
910 }
911 },
912 {
913 "desc": "Samsung Galaxy Z Flip",
914 "ua": "Mozilla/5.0 (Linux; Android 10; SM-F700N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.136 Mobile Safari/537.36",
915 "expect": {
916 "vendor": "Samsung",
917 "model": "SM-F700N",
918 "type": "mobile"
919 }
920 },
921 {
922 "desc": "Samsung Galaxy Z Fold2",
923 "ua": "Mozilla/5.0 (Linux; Android 10; SM-F916B) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36",
924 "expect": {
925 "vendor": "Samsung",
926 "model": "SM-F916B",
927 "type": "mobile"
928 }
929 },
930 {
931 "desc": "Samsung Galaxy S10E",
932 "ua": "Mozilla/5.0 (Linux; Android 9; SM-G970F) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Mobile Safari/537.36",
933 "expect": {
934 "vendor": "Samsung",
935 "model": "SM-G970F",
936 "type": "mobile"
937 }
938 },
939 {
940 "desc": "Samsung Galaxy Note 10+",
941 "ua": "Mozilla/5.0 (Linux; Android 9; SM-N976V) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.89 Mobile Safari/537.36",
942 "expect": {
943 "vendor": "Samsung",
944 "model": "SM-N976V",
945 "type": "mobile"
946 }
947 },
948 {
949 "desc": "Samsung SM-C5000",
950 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; SM-C5000 Build/MMB29M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/51.0.2704.81 Mobile Safari/537.36 wkbrowser 4.1.35 3065",
951 "expect": {
952 "vendor": "Samsung",
953 "model": "SM-C5000",
954 "type": "mobile"
955 }
956 },
957 {
958 "desc": "Samsung Galaxy Note 8",
959 "ua": "Mozilla/5.0 (Linux; Android 4.2.2; GT-N5100 Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.141 Safari/537.36",
960 "expect": {
961 "vendor": "Samsung",
962 "model": "GT-N5100",
963 "type": "tablet"
964 }
965 },
966 {
967 "desc": "Samsung SM-T231",
968 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T231 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
969 "expect": {
970 "vendor": "Samsung",
971 "model": "SM-T231",
972 "type": "tablet"
973 }
974 },
975 {
976 "desc": "Samsung Galaxy Tab 6 Lite",
977 "ua": "Mozilla/5.0 (Linux; Android 10; SAMSUNG SM-P610) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/12.0 Chrome/79.0.3945.136 Safari/537.36",
978 "expect": {
979 "vendor": "Samsung",
980 "model": "SM-P610",
981 "type": "tablet"
982 }
983 },
984 {
985 "desc": "Samsung Galaxy Tab A 9.7",
986 "ua": "Mozilla/5.0 (Linux; Android 7.1.1; SM-P550 Build/NMF26X; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/89.0.4389.90 Safari/537.36",
987 "expect": {
988 "vendor": "Samsung",
989 "model": "SM-P550",
990 "type": "tablet"
991 }
992 },
993 {
994 "desc": "Samsung Galaxy Tab A 10.1",
995 "ua": " Mozilla/5.0 (Linux; Android 10; SAMSUNG SM-T515) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/13.0 Chrome/83.0.4103.106 Safari/537.36",
996 "expect": {
997 "vendor": "Samsung",
998 "model": "SM-T515",
999 "type": "tablet"
1000 }
1001 },
1002 {
1003 "desc": "Samsung Galaxy Tab S7",
1004 "ua": "Mozilla/5.0 (Linux; Android 10; SM-T870) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36",
1005 "expect": {
1006 "vendor": "Samsung",
1007 "model": "SM-T870",
1008 "type": "tablet"
1009 }
1010 },
1011 {
1012 "desc": "Samsung Galaxy Tab S",
1013 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T700 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
1014 "expect": {
1015 "vendor": "Samsung",
1016 "model": "SM-T700",
1017 "type": "tablet"
1018 }
1019 },
1020 {
1021 "desc": "Samsung Galaxy Tab Pro 10.1",
1022 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-T520 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
1023 "expect": {
1024 "vendor": "Samsung",
1025 "model": "SM-T520",
1026 "type": "tablet"
1027 }
1028 },
1029 {
1030 "desc": "Samsung Note 10.1",
1031 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; SM-P605) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Safari/537.36",
1032 "expect": {
1033 "vendor": "Samsung",
1034 "model": "SM-P605",
1035 "type": "tablet"
1036 }
1037 },
1038 {
1039 "desc": "Samsung SmartTV2011",
1040 "ua": "HbbTV/1.1.1 (;;;;;) Maple;2011",
1041 "expect": {
1042 "vendor": "Samsung",
1043 "model": "SmartTV2011",
1044 "type": "smarttv"
1045 }
1046 },
1047 {
1048 "desc": "Samsung SmartTV2012",
1049 "ua": "HbbTV/1.1.1 (;Samsung;SmartTV2012;;;) WebKit",
1050 "expect": {
1051 "vendor": "Samsung",
1052 "model": "SmartTV2012",
1053 "type": "smarttv"
1054 }
1055 },
1056 {
1057 "desc": "Samsung SmartTV2014",
1058 "ua": "HbbTV/1.1.1 (;Samsung;SmartTV2014;T-NT14UDEUC-1060.4;;) WebKit",
1059 "expect": {
1060 "vendor": "Samsung",
1061 "model": "SmartTV2014",
1062 "type": "smarttv"
1063 }
1064 },
1065 {
1066 "desc": "Samsung SmartTV",
1067 "ua": "Mozilla/5.0 (SMART-TV; X11; Linux armv7l) AppleWebkit/537.42 (KHTML, like Gecko) Safari/537.42",
1068 "expect": {
1069 "vendor": "undefined",
1070 "model": "undefined",
1071 "type": "smarttv"
1072 }
1073 },
1074 {
1075 "desc": "Samsung SmartTV",
1076 "ua": "Mozilla/5.0 (SMART-TV; Linux; Tizen 2.3) AppleWebkit/538.1 (KHTML, like Gecko) SamsungBrowser/1.0 TV Safari/538.1",
1077 "expect": {
1078 "vendor": "Samsung",
1079 "model": "undefined",
1080 "type": "smarttv"
1081 }
1082 },
1083 {
1084 "desc": "Sony G8141 (Xperia XZ Premium)",
1085 "ua": "Mozilla/5.0 (Linux; Android 8.0.0; G8141) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.80 Mobile Safari/537.36",
1086 "expect": {
1087 "vendor": "Sony",
1088 "model": "G8141",
1089 "type": "mobile"
1090 }
1091 },
1092 {
1093 "desc": "Sony C5303 (Xperia SP)",
1094 "ua": "Mozilla/5.0 (Linux; Android 4.3; C5303 Build/12.1.A.1.205) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.93 Mobile Safari/537.36",
1095 "expect": {
1096 "vendor": "Sony",
1097 "model": "C5303",
1098 "type": "mobile"
1099 }
1100 },
1101 {
1102 "desc": "Sony SO-02F (Xperia Z1 F)",
1103 "ua": "Mozilla/5.0 (Linux; Android 4.2.2; SO-02F Build/14.1.H.2.119) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.114 Mobile Safari/537.36",
1104 "expect": {
1105 "vendor": "Sony",
1106 "model": "SO-02F",
1107 "type": "mobile"
1108 }
1109 },
1110 {
1111 "desc": "Sony D6653 (Xperia Z3)",
1112 "ua": "Mozilla/5.0 (Linux; Android 4.4; D6653 Build/23.0.A.0.376) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.141 Mobile Safari/537.36",
1113 "expect": {
1114 "vendor": "Sony",
1115 "model": "D6653",
1116 "type": "mobile"
1117 }
1118 },
1119 {
1120 "desc": "Sony Xperia SOL25 (ZL2)",
1121 "ua": "Mozilla/5.0 (Linux; U; Android 4.4; SOL25 Build/17.1.1.C.1.64) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
1122 "expect": {
1123 "vendor": "Sony",
1124 "model": "SOL25",
1125 "type": "mobile"
1126 }
1127 },
1128 {
1129 "desc": "Sony Xperia SP",
1130 "ua": "Mozilla/5.0 (Linux; Android 4.3; C5302 Build/12.1.A.1.201) AppleWebkit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.114 Mobile Safari/537.36",
1131 "expect": {
1132 "vendor": "Sony",
1133 "model": "C5302",
1134 "type": "mobile"
1135 }
1136 },
1137 {
1138 "desc": "Sony Xperia L4",
1139 "ua": "Mozilla/5.0 (Linux; Android 9; XQ-AD51) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.83 Mobile Safari/537.36",
1140 "expect": {
1141 "vendor": "Sony",
1142 "model": "XQ-AD51",
1143 "type": "mobile"
1144 }
1145 },
1146 {
1147 "desc": "Sony Xperia 1ii",
1148 "ua": "Mozilla/5.0 (Linux; Android 10; XQ-AT51) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 Mobile Safari/537.36",
1149 "expect": {
1150 "vendor": "Sony",
1151 "model": "XQ-AT51",
1152 "type": "mobile"
1153 }
1154 },
1155 {
1156 "desc": "Sony Xperia 10ii",
1157 "ua": "Mozilla/5.0 (Linux; Android 10; XQ-AU52) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36",
1158 "expect": {
1159 "vendor": "Sony",
1160 "model": "XQ-AU52",
1161 "type": "mobile"
1162 }
1163 },
1164 {
1165 "desc": "Sony Xperia Pro",
1166 "ua": "Mozilla/5.0 (Linux; Android 10; XQ-AQ52) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.185 Mobile Safari/537.36",
1167 "expect": {
1168 "vendor": "Sony",
1169 "model": "XQ-AQ52",
1170 "type": "mobile"
1171 }
1172 },
1173 {
1174 "desc": "Sony SGP521 (Xperia Z2 Tablet)",
1175 "ua": "Mozilla/5.0 (Linux; Android 4.4; SGP521 Build/17.1.A.0.432) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.99 Safari/537.36",
1176 "expect": {
1177 "vendor": "Sony",
1178 "model": "Xperia Tablet",
1179 "type": "tablet"
1180 }
1181 },
1182 {
1183 "desc": "Sony Xperia Z2 Tablet",
1184 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; SGP561) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.99 Safari/537.36",
1185 "expect": {
1186 "vendor": "Sony",
1187 "model": "Xperia Tablet",
1188 "type": "tablet"
1189 }
1190 },
1191 {
1192 "desc": "Sony Tablet S",
1193 "ua": "Mozilla/5.0 (Linux; U; Android 3.1; Sony Tablet S Build/THMAS10000) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13",
1194 "expect": {
1195 "vendor": "Sony",
1196 "model": "Xperia Tablet",
1197 "type": "tablet"
1198 }
1199 },
1200 {
1201 "desc": "Sony Tablet Z LTE",
1202 "ua": "Mozilla/5.0 (Linux; U; Android 4.1; SonySGP321 Build/10.2.C.0.143) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30",
1203 "expect": {
1204 "vendor": "Sony",
1205 "model": "Xperia Tablet",
1206 "type": "tablet"
1207 }
1208 },
1209 {
1210 "desc" : "Tesla",
1211 "ua" : "Mozilla/5.0 (X11; GNU/Linux) AppleWebKit/601.1 (KHTML, like Gecko) Tesla QtCarBrowser Safari/601.1",
1212 "expect" :
1213 {
1214 "vendor": "Tesla",
1215 "model": "undefined",
1216 "type": "embedded"
1217 }
1218 },
1219 {
1220 "desc" : "Tesla",
1221 "ua" : "Mozilla/5.0 (X11; GNU/Linux) AppleWebKit/537.36 (KHTML, like Gecko) Chromium/79.0.3945.130 Chrome/79.0.3945.130 Safari/537.36 Tesla/2020.16.2.1-e99c70fff409",
1222 "expect" :
1223 {
1224 "vendor": "Tesla",
1225 "model": "undefined",
1226 "type": "embedded"
1227 }
1228 },
1229 {
1230 "desc": "Xiaomi 2013023",
1231 "ua": "Mozilla/5.0 (Linux; U; Android 4.2.2; en-US; 2013023 Build/HM2013023) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 UCBrowser/10.0.1.512 U3/0.8.0 Mobile Safari/533.1",
1232 "expect": {
1233 "vendor": "Xiaomi",
1234 "model": "2013023",
1235 "type": "mobile"
1236 }
1237 },
1238 {
1239 "desc": "Xiaomi Hongmi Note 1W",
1240 "ua": "Mozilla/5.0 (Linux; U; Android 4.2.2; zh-CN; HM NOTE 1W Build/JDQ39) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 UCBrowser/9.7.9.439 U3/0.8.0 Mobile Safari/533.1",
1241 "expect": {
1242 "vendor": "Xiaomi",
1243 "model": "HM NOTE 1W",
1244 "type": "mobile"
1245 }
1246 },
1247 {
1248 "desc": "Xiaomi Mi 3C",
1249 "ua": "Mozilla/5.0 (Linux; U; Android 4.3; zh-CN; MI 3C Build/JLS36C) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 UCBrowser/9.7.9.439 U3/0.8.0 Mobile Safari/533.1",
1250 "expect": {
1251 "vendor": "Xiaomi",
1252 "model": "MI 3C",
1253 "type": "mobile"
1254 }
1255 },
1256 {
1257 "desc": "Xiaomi Mi 5",
1258 "ua": "Mozilla/5.0 (Linux; Android 7.0; MI 5 Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.83 Mobile Safari/537.36",
1259 "expect": {
1260 "vendor": "Xiaomi",
1261 "model": "MI 5",
1262 "type": "mobile"
1263 }
1264 },
1265 {
1266 "desc": "Xiaomi Mi 6",
1267 "ua": "Mozilla/5.0 (Linux; Android 7.1; MI 6 Build/NMF26X; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/59.0.3071.125 Mobile Safari/537.36",
1268 "expect": {
1269 "vendor": "Xiaomi",
1270 "model": "MI 6",
1271 "type": "mobile"
1272 }
1273 },
1274 {
1275 "desc": "Xiaomi Mi 5s Plus",
1276 "ua": "Mozilla/5.0 (Linux; U; Android 6.0.1; zh-cn; MI 5s Plus Build/MXB48T) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.146 Mobile Safari/537.36 XiaoMi/MiuiBrowser/8.7.1",
1277 "expect": {
1278 "vendor": "Xiaomi",
1279 "model": "MI 5s Plus",
1280 "type": "mobile"
1281 }
1282 },
1283 {
1284 "desc": "Xiaomi Mi A1",
1285 "ua": "Mozilla/5.0 (Linux; Android 8.0.0; Mi A1 Build/OPR1.170623.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36",
1286 "expect": {
1287 "vendor": "Xiaomi",
1288 "model": "Mi A1",
1289 "type": "mobile"
1290 }
1291 },
1292 {
1293 "desc": "Xiaomi Mi Note",
1294 "ua": "Mozilla/5.0 (Linux; Android 4.4.4; MI NOTE LTE Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36",
1295 "expect": {
1296 "vendor": "Xiaomi",
1297 "model": "MI NOTE LTE",
1298 "type": "mobile"
1299 }
1300 },
1301 {
1302 "desc": "Xiaomi Mi One Plus",
1303 "ua": "Mozilla/5.0 (Linux; U; Android 4.0.4; en-us; MI-ONE Plus Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
1304 "expect": {
1305 "vendor": "Xiaomi",
1306 "model": "MI-ONE Plus",
1307 "type": "mobile"
1308 }
1309 },
1310 {
1311 "desc": "Xiaomi MI PAD 2",
1312 "ua": "Mozilla/5.0 (Linux; Android 5.1; MI PAD 2 Build/LMY47I; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Safari/537.36 [FB_IAB/FB4A;FBAV/137.0.0.24.91;]",
1313 "expect": {
1314 "vendor": "Xiaomi",
1315 "model": "MI PAD 2",
1316 "type": "tablet"
1317 }
1318 },
1319 {
1320 "desc": "Xiaomi MI PAD 4 PLUS",
1321 "ua": "Mozilla/5.0 (Linux; Android 8.1; MI PAD 4 PLUS) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36",
1322 "expect": {
1323 "vendor": "Xiaomi",
1324 "model": "MI PAD 4 PLUS",
1325 "type": "tablet"
1326 }
1327 },
1328 {
1329 "desc": "Xiaomi POCO X2",
1330 "ua": "Mozilla/5.0 (Linux; Android 10; POCO X2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.136 Mobile Safari/537.36",
1331 "expect": {
1332 "vendor": "Xiaomi",
1333 "model": "POCO X2",
1334 "type": "mobile"
1335 }
1336 },
1337 {
1338 "desc": "Xiaomi Redmi 4A",
1339 "ua": "Mozilla/5.0 (Linux; Android 6.0; Redmi 4A Build/MMB29M; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/56.0.2924.87 Mobile Safari/537.36",
1340 "expect": {
1341 "vendor": "Xiaomi",
1342 "model": "Redmi 4A",
1343 "type": "mobile"
1344 }
1345 },
1346 {
1347 "desc": "Xiaomi Redmi K30 5G",
1348 "ua": "Mozilla/5.0 (Linux; Android 10; Redmi K30 5G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.96 Mobile Safari/537.36",
1349 "expect": {
1350 "vendor": "Xiaomi",
1351 "model": "Redmi K30 5G",
1352 "type": "mobile"
1353 }
1354 },
1355 {
1356 "desc": "Xiaomi Redmi K30 Pro",
1357 "ua": "Mozilla/5.0 (Linux; Android 10; Redmi K30 Pro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36",
1358 "expect": {
1359 "vendor": "Xiaomi",
1360 "model": "Redmi K30 Pro",
1361 "type": "mobile"
1362 }
1363 },
1364 {
1365 "desc": "Xiaomi Redmi Note 3",
1366 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; Redmi Note 3 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.116 Mobile Safari/537.36",
1367 "expect": {
1368 "vendor": "Xiaomi",
1369 "model": "Redmi Note 3",
1370 "type": "mobile"
1371 }
1372 },
1373 {
1374 "desc": "Xiaomi Redmi Note 9 Pro Max",
1375 "ua": "Mozilla/5.0 (Linux; Android 10; Redmi Note 9 Pro Max) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.99 Mobile Safari/537.36",
1376 "expect": {
1377 "vendor": "Xiaomi",
1378 "model": "Redmi Note 9 Pro Max",
1379 "type": "mobile"
1380 }
1381 },
1382 {
1383 "desc": "PlayStation 4",
1384 "ua": "Mozilla/5.0 (PlayStation 4 3.00) AppleWebKit/537.73 (KHTML, like Gecko)",
1385 "expect": {
1386 "vendor": "Sony",
1387 "model": "PlayStation 4",
1388 "type": "console"
1389 }
1390 },
1391 {
1392 "desc": "PlayStation 5",
1393 "ua": "Mozilla/5.0 (Playstation; Playstation 5/1.05) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0 Safari/605.1.15",
1394 "expect": {
1395 "vendor": "Sony",
1396 "model": "Playstation 5",
1397 "type": "console"
1398 }
1399 },
1400 {
1401 "desc": "PlayStation Vita",
1402 "ua": "Mozilla/5.0 (PlayStation Vita 3.52) AppleWebKit/537.73 (KHTML, like Gecko) Silk/3.2",
1403 "expect": {
1404 "vendor": "Sony",
1405 "model": "PlayStation Vita",
1406 "type": "console"
1407 }
1408 },
1409 {
1410 "desc": "Nintendo Switch",
1411 "ua": "Mozilla/5.0 (Nintendo Switch; WifiWebAuthApplet) AppleWebKit/606.4 (KHTML, like Gecko) NF/6.0.1.15.4 NintendoBrowser/5.1.0.20393",
1412 "expect": {
1413 "vendor": "Nintendo",
1414 "model": "Switch",
1415 "type": "console"
1416 }
1417 },
1418 {
1419 "desc": "Nintendo WiiU",
1420 "ua": "Mozilla/5.0 (Nintendo WiiU) AppleWebKit/536.30 (KHTML, like Gecko) NX/3.0.4.2.9 NintendoBrowser/4.2.0.11146.EU",
1421 "expect": {
1422 "vendor": "Nintendo",
1423 "model": "WiiU",
1424 "type": "console"
1425 }
1426 },
1427 {
1428 "desc": "Nintendo Wii",
1429 "ua": "Opera/9.10 (Nintendo Wii; U; ; 1621; en)",
1430 "expect": {
1431 "vendor": "Nintendo",
1432 "model": "Wii",
1433 "type": "console"
1434 }
1435 },
1436 {
1437 "desc": "Nintendo 3DS",
1438 "ua": "Mozilla/5.0 (Nintendo 3DS; U; ; en) Version/1.7610.EU",
1439 "expect": {
1440 "vendor": "Nintendo",
1441 "model": "3DS",
1442 "type": "console"
1443 }
1444 },
1445 {
1446 "desc": "Nintendo 3DS",
1447 "ua": "Mozilla/5.0 (New Nintendo 3DS like iPhone) AppleWebKit/536.30 (KHTML, like Gecko) NX/3.0.0.5.15 Mobile NintendoBrowser/1.3.10126.EU",
1448 "expect": {
1449 "vendor": "Nintendo",
1450 "model": "3DS",
1451 "type": "console"
1452 }
1453 },
1454 {
1455 "desc": "Galaxy Nexus",
1456 "ua": "Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76B) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.133 Mobile Safari/535.19",
1457 "expect": {
1458 "vendor": "Samsung",
1459 "model": "Galaxy Nexus",
1460 "type": "mobile"
1461 }
1462 },
1463 {
1464 "desc": "Samsung Galaxy C9 Pro",
1465 "ua": "Mozilla/5.0 (Linux; Android 6.0; SAMSUNG SM-C900F Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/4.2 Chrome/44.0.2403.133 Mobile Safari/537.36",
1466 "expect": {
1467 "vendor": "Samsung",
1468 "model": "SM-C900F",
1469 "type": "mobile"
1470 }
1471 },
1472 {
1473 "desc": "Samsung Galaxy S5",
1474 "ua": "Mozilla/5.0 (Linux; Android 5.0; SM-G900F Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.78 Mobile Safari/537.36",
1475 "expect": {
1476 "vendor": "Samsung",
1477 "model": "SM-G900F",
1478 "type": "mobile"
1479 }
1480 },
1481 {
1482 "desc": "Samsung Galaxy S6",
1483 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-G920I Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
1484 "expect": {
1485 "vendor": "Samsung",
1486 "model": "SM-G920I",
1487 "type": "mobile"
1488 }
1489 },
1490 {
1491 "desc": "Samsung Galaxy S6 Edge",
1492 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; SM-G925I Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Safari/537.36",
1493 "expect": {
1494 "vendor": "Samsung",
1495 "model": "SM-G925I",
1496 "type": "mobile"
1497 }
1498 },
1499 {
1500 "desc": "Samsung Galaxy Note 5 Chrome",
1501 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; SM-N920C Build/LMY47X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.91 Mobile Safari/537.36",
1502 "expect": {
1503 "vendor": "Samsung",
1504 "model": "SM-N920C",
1505 "type": "mobile"
1506 }
1507 },
1508 {
1509 "desc": "Samsung Galaxy Note 5 Samsung Browser",
1510 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; SAMSUNG SM-N920C Build/LMY47X) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/4.0 Chrome/44.0.2403.133 Mobile Safari/537.36",
1511 "expect": {
1512 "vendor": "Samsung",
1513 "model": "SM-N920C",
1514 "type": "mobile"
1515 }
1516 },
1517 {
1518 "desc": "Google Chromecast",
1519 "ua": "Mozilla/5.0 (X11; Linux armv7l) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.84 Safari/537.36 CrKey/1.22.79313",
1520 "expect": {
1521 "vendor": "Google",
1522 "model": "Chromecast",
1523 "type": "smarttv"
1524 }
1525 },
1526 {
1527 "desc": "Google Pixel C",
1528 "ua": "Mozilla/5.0 (Linux; Android 7.0; Pixel C Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/52.0.2743.98 Safari/537.36",
1529 "expect": {
1530 "vendor": "Google",
1531 "model": "Pixel C",
1532 "type": "tablet"
1533 }
1534 },
1535 {
1536 "desc": "Google Pixel C",
1537 "ua": "Mozilla/5.0 (Linux; Android 8.0.0; Pixel C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.64 Safari/537.36",
1538 "expect": {
1539 "vendor": "Google",
1540 "model": "Pixel C",
1541 "type": "tablet"
1542 }
1543 },
1544 {
1545 "desc": "Google Pixel",
1546 "ua": "Mozilla/5.0 (Linux; Android 7.1; Pixel Build/NDE63V) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.85 Mobile Safari/537.36",
1547 "expect": {
1548 "vendor": "Google",
1549 "model": "Pixel",
1550 "type": "mobile"
1551 }
1552 },
1553 {
1554 "desc": "Google Pixel XL",
1555 "ua": "Mozilla/5.0 (Linux; Android 7.1; Pixel XL Build/NDE63X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.85 Mobile Safari/537.36",
1556 "expect": {
1557 "vendor": "Google",
1558 "model": "Pixel XL",
1559 "type": "mobile"
1560 }
1561 },
1562 {
1563 "desc": "Google Pixel XL",
1564 "ua": "Mozilla/5.0 (Linux; Android 9; Pixel XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Mobile Safari/537.36",
1565 "expect": {
1566 "vendor": "Google",
1567 "model": "Pixel XL",
1568 "type": "mobile"
1569 }
1570 },
1571 {
1572 "desc": "Google Pixel 2",
1573 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; Pixel 2 Build/OPM1.171019.013) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Safari/537.36",
1574 "expect": {
1575 "vendor": "Google",
1576 "model": "Pixel 2",
1577 "type": "mobile"
1578 }
1579 },
1580 {
1581 "desc": "Google Pixel 2 XL",
1582 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; Pixel 2 XL Build/OPM1.171019.013) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Safari/537.36",
1583 "expect": {
1584 "vendor": "Google",
1585 "model": "Pixel 2 XL",
1586 "type": "mobile"
1587 }
1588 },
1589 {
1590 "desc": "Google Pixel 2 XL",
1591 "ua": "Mozilla/5.0 (Linux; Android 9; Pixel 2 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Mobile Safari/537.36",
1592 "expect": {
1593 "vendor": "Google",
1594 "model": "Pixel 2 XL",
1595 "type": "mobile"
1596 }
1597 },
1598 {
1599 "desc": "Google Pixel 3",
1600 "ua": "Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PD1A.180720.030) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Mobile Safari/537.36",
1601 "expect": {
1602 "vendor": "Google",
1603 "model": "Pixel 3",
1604 "type": "mobile"
1605 }
1606 },
1607 {
1608 "desc": "Google Pixel 3 XL",
1609 "ua": "Mozilla/5.0 (Linux; Android 9; Pixel 3 XL Build/PD1A.180720.030) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Mobile Safari/537.36",
1610 "expect": {
1611 "vendor": "Google",
1612 "model": "Pixel 3 XL",
1613 "type": "mobile"
1614 }
1615 },
1616 {
1617 "desc": "Google Pixel 3 XL",
1618 "ua": "Mozilla/5.0 (Linux; Android 9; Pixel 3 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Mobile Safari/537.36",
1619 "expect": {
1620 "vendor": "Google",
1621 "model": "Pixel 3 XL",
1622 "type": "mobile"
1623 }
1624 },
1625 {
1626 "desc": "Google Pixel 3a",
1627 "ua": "Mozilla/5.0 (Linux; Android 10; Pixel 3a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Mobile Safari/537.36",
1628 "expect": {
1629 "vendor": "Google",
1630 "model": "Pixel 3a",
1631 "type": "mobile"
1632 }
1633 },
1634 {
1635 "desc": "Google Pixel 3a XL",
1636 "ua": "Mozilla/5.0 (Linux; Android 10; Pixel 3a XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Mobile Safari/537.36",
1637 "expect": {
1638 "vendor": "Google",
1639 "model": "Pixel 3a XL",
1640 "type": "mobile"
1641 }
1642 },
1643 {
1644 "desc": "Google Pixel 4",
1645 "ua": "Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Mobile Safari/537.36",
1646 "expect": {
1647 "vendor": "Google",
1648 "model": "Pixel 4",
1649 "type": "mobile"
1650 }
1651 },
1652 {
1653 "desc": "Google Pixel 4a",
1654 "ua": "Mozilla/5.0 (Linux; Android 10; Pixel 4a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.83 Mobile Safari/537.36",
1655 "expect": {
1656 "vendor": "Google",
1657 "model": "Pixel 4a",
1658 "type": "mobile"
1659 }
1660 },
1661 {
1662 "desc": "Google Pixel 4 XL",
1663 "ua": "Mozilla/5.0 (Linux; Android 10; Pixel 4 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Mobile Safari/537.36",
1664 "expect": {
1665 "vendor": "Google",
1666 "model": "Pixel 4 XL",
1667 "type": "mobile"
1668 }
1669 },
1670 {
1671 "desc": "Google Pixel 5",
1672 "ua": "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.120 Mobile Safari/537.36",
1673 "expect": {
1674 "vendor": "Google",
1675 "model": "Pixel 5",
1676 "type": "mobile"
1677 }
1678 },
1679 {
1680 "desc": "Generic Android Device",
1681 "ua": "Mozilla/5.0 (Linux; U; Android 6.0.1; i980 Build/MRA58K)",
1682 "expect": {
1683 "vendor": "Generic",
1684 "model": "Android 6.0.1"
1685 }
1686 },
1687 {
1688 "desc": "Android Phone Unidentified Vendor (docomo F-04K)",
1689 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; F-04K Build/V15R060P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.137 Mobile Safari/537.36",
1690 "expect": {
1691 "model": "F-04K",
1692 "type": "mobile"
1693 }
1694 },
1695 {
1696 "desc": "Android Phone Unidentified Vendor (docomo SH-02M)",
1697 "ua": "Mozilla/5.0 (Linux; Android 9; SH-02M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.136 Mobile Safari/537.36",
1698 "expect": {
1699 "model": "SH-02M",
1700 "type": "mobile"
1701 }
1702 },
1703 {
1704 "desc": "Android Tablet Unidentified Vendor (docomo F-02K)",
1705 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; F-02K Build/V44R059G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.109 Safari/537.36",
1706 "expect": {
1707 "model": "F-02K",
1708 "type": "tablet"
1709 }
1710 },
1711 {
1712 "desc": "Android Tablet Unidentified Vendor (docomo d-02K)",
1713 "ua": "Mozilla/5.0 (Linux; Android 9; d-02K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.136 Safari/537.36",
1714 "expect": {
1715 "model": "d-02K",
1716 "type": "tablet"
1717 }
1718 },
1719 {
1720 "desc": "LG VK Series Tablet",
1721 "ua": "Mozilla/5.0 (Linux; Android 5.0.2; VK700 Build/LRX22G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.84 Safari/537.36",
1722 "expect": {
1723 "vendor": "LG",
1724 "model": "VK700",
1725 "type": "tablet"
1726 }
1727 },
1728 {
1729 "desc": "LG LK Series Tablet",
1730 "ua": "Mozilla/5.0 (Linux; Android 5.0.1; LGLK430 Build/LRX21Y) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/38.0.2125.102 Safari/537.36",
1731 "expect": {
1732 "vendor": "LG",
1733 "model": "LK430",
1734 "type": "tablet"
1735 }
1736 },
1737 {
1738 "desc": "RCA Voyager III Tablet",
1739 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; RCT6973W43 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1740 "expect": {
1741 "vendor": "RCA",
1742 "model": "RCT6973W43",
1743 "type": "tablet"
1744 }
1745 },
1746 {
1747 "desc": "RCA Voyager II Tablet",
1748 "ua": "Mozilla/5.0 (Linux; Android 5.0; RCT6773W22B Build/LRX21M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1749 "expect": {
1750 "vendor": "RCA",
1751 "model": "RCT6773W22B",
1752 "type": "tablet"
1753 }
1754 },
1755 {
1756 "desc": "Verizon Quanta Tablet",
1757 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; QMV7B Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1758 "expect": {
1759 "vendor": "Verizon",
1760 "model": "QMV7B",
1761 "type": "tablet"
1762 }
1763 },
1764 {
1765 "desc": "Verizon Ellipsis 8 Tablet",
1766 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; QTAQZ3 Build/LMY47V) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1767 "expect": {
1768 "vendor": "Verizon",
1769 "model": "QTAQZ3",
1770 "type": "tablet"
1771 }
1772 },
1773 {
1774 "desc": "Verizon Ellipsis 8HD Tablet",
1775 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; QTASUN1 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.81 Safari/537.36",
1776 "expect": {
1777 "vendor": "Verizon",
1778 "model": "QTASUN1",
1779 "type": "tablet"
1780 }
1781 },
1782 {
1783 "desc": "Dell Venue 8 Tablet",
1784 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; Venue 8 3830 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1785 "expect": {
1786 "vendor": "Dell",
1787 "model": "Venue 8 3830",
1788 "type": "tablet"
1789 }
1790 },
1791 {
1792 "desc": "Dell Venue 7 Tablet",
1793 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; Venue 7 3730 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1794 "expect": {
1795 "vendor": "Dell",
1796 "model": "Venue 7 3730",
1797 "type": "tablet"
1798 }
1799 },
1800 {
1801 "desc": "Barnes & Noble Nook HD+ Tablet",
1802 "ua": "Mozilla/5.0 (Linux; U; Android 4.1.2; en-us; Barnes & Noble Nook HD+ Build/JZO54K; CyanogenMod-10) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
1803 "expect": {
1804 "vendor": "Barnes & Noble",
1805 "model": "Nook HD+",
1806 "type": "tablet"
1807 }
1808 },
1809 {
1810 "desc": "Barnes & Noble V400 Tablet",
1811 "ua": "Mozilla/5.0 (Linux; Android 4.0.4; BNTV400 Build/IMM76L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.111 Safari/537.36",
1812 "expect": {
1813 "vendor": "Barnes & Noble",
1814 "model": "V400",
1815 "type": "tablet"
1816 }
1817 },
1818 {
1819 "desc": "NuVision TM101A540N Tablet",
1820 "ua": "Mozilla/5.0 (Linux; Android 5.1; TM101A540N Build/LMY47I; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/50.0.2661.86 Safari/537.36",
1821 "expect": {
1822 "vendor": "NuVision",
1823 "model": "TM101A540N",
1824 "type": "tablet"
1825 }
1826 },
1827 {
1828 "desc": "ZTE-Z431",
1829 "ua": "ZTE-Z431/1.4.0 NetFront/4.2 QTV5.1 Profile/MIDP-2.1 Configuration/CLDC-1.1",
1830 "expect": {
1831 "vendor": "ZTE",
1832 "model": "Z431",
1833 "type": "mobile"
1834 }
1835 },
1836 {
1837 "desc": "ZTE",
1838 "ua": "Mozilla/5.0 (Linux; U; Android 4.1.2; en-us; ZTE-Z740G Build/JZO54K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
1839 "expect": {
1840 "vendor": "ZTE",
1841 "model": "Z740G",
1842 "type": "mobile"
1843 }
1844 },
1845 {
1846 "desc": "ZTE K Series Tablet",
1847 "ua": "Mozilla/5.0 (Linux; Android 6.0.1; K88 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1848 "expect": {
1849 "vendor": "ZTE",
1850 "model": "K88",
1851 "type": "tablet"
1852 }
1853 },
1854 {
1855 "desc": "ZTE Nubia Red Magic 3",
1856 "ua": "Mozilla/5.0 (Linux; Android 9; NX629J Build/PKQ1.190321.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/45016 Mobile Safari/537.36 MMWEBID/4064 MicroMessenger/7.0.10.1580(0x27000A34) Process/tools NetType/WIFI Language/zh_CN ABI/arm64",
1857 "expect": {
1858 "vendor": "ZTE",
1859 "model": "NX629J",
1860 "type": "mobile"
1861 }
1862 },
1863 {
1864 "desc": "Swizz GEN610",
1865 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; GEN610 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.83 Mobile Safari/537.36",
1866 "expect": {
1867 "vendor": "Swiss",
1868 "model": "GEN610",
1869 "type": "mobile"
1870 }
1871 },
1872 {
1873 "desc": "Swizz ZUR700",
1874 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; ZUR700 Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Safari/537.36",
1875 "expect": {
1876 "vendor": "Swiss",
1877 "model": "ZUR700",
1878 "type": "tablet"
1879 }
1880 },
1881 {
1882 "desc": "Zeki TB782b Tablet",
1883 "ua": "Mozilla/5.0 (Linux; U; Android 4.0.4; en-US; TB782B Build/IMM76D) AppleWebKit/534.31 (KHTML, like Gecko) UCBrowser/9.0.2.299 U3/0.8.0 Mobile Safari/534.31",
1884 "expect": {
1885 "vendor": "Zeki",
1886 "model": "TB782B",
1887 "type": "tablet"
1888 }
1889 },
1890 {
1891 "desc": "Dragon Touch Tablet",
1892 "ua": "Mozilla/5.0 (Linux; Android 4.0.4; DT9138B Build/IMM76D) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.72 Mobile Safari/537.36",
1893 "expect": {
1894 "vendor": "Dragon Touch",
1895 "model": "9138B",
1896 "type": "tablet"
1897 }
1898 },
1899 {
1900 "desc": "Insignia Tablet",
1901 "ua": "Mozilla/5.0 (Linux; U; Android 6.0.1; NS-P08A7100 Build/MMB29M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/56.0.2924.87 Safari/537.36",
1902 "expect": {
1903 "vendor": "Insignia",
1904 "model": "NS-P08A7100",
1905 "type": "tablet"
1906 }
1907 },
1908 {
1909 "desc": "Voice Xtreme V75",
1910 "ua": "Mozilla/5.0 (Linux; U; Android 4.2.1; en-us; V75 Build/JOP40D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
1911 "expect": {
1912 "vendor": "Voice",
1913 "model": "V75",
1914 "type": "mobile"
1915 }
1916 },
1917 {
1918 "desc": "LvTel V11",
1919 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; V11 Build/LMY47V) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/39.0.0.0 Safari/537.36",
1920 "expect": {
1921 "vendor": "LvTel",
1922 "model": "V11",
1923 "type": "mobile"
1924 }
1925 },
1926 {
1927 "desc": "Envizen Tablet V100MD",
1928 "ua": "Mozilla/5.0 (Linux; U; Android 4.1.1; en-us; V100MD Build/V100MD.20130816) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30",
1929 "expect": {
1930 "vendor": "Envizen",
1931 "model": "V100MD",
1932 "type": "tablet"
1933 }
1934 },
1935 {
1936 "desc": "Rotor Tablet",
1937 "ua": "mozilla/5.0 (linux; android 5.0.1; tu_1491 build/lrx22c) applewebkit/537.36 (khtml, like gecko) chrome/43.0.2357.93 safari/537.36",
1938 "expect": {
1939 "vendor": "Rotor",
1940 "model": "1491",
1941 "type": "tablet"
1942 }
1943 },
1944 {
1945 "desc": "MachSpeed Tablets",
1946 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; Trio 7.85 vQ Build/Trio_7.85_vQ) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Safari/537.36",
1947 "expect": {
1948 "vendor": "MachSpeed",
1949 "model": "Trio 7.85 vQ",
1950 "type": "tablet"
1951 }
1952 },
1953 {
1954 "desc": "Trinity Tablets",
1955 "ua": "Mozilla/5.0 (Linux; Android 5.0.1; Trinity T101 Build/LRX22C) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.83 Safari/537.36",
1956 "expect": {
1957 "vendor": "Trinity",
1958 "model": "T101",
1959 "type": "tablet"
1960 }
1961 },
1962 {
1963 "desc": "NextBook Next7",
1964 "ua": "Mozilla/5.0 (Linux; U; Android 4.0.4; en-us; Next7P12 Build/IMM76I) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Safari/534.30",
1965 "expect": {
1966 "vendor": "NextBook",
1967 "model": "Next7P12",
1968 "type": "tablet"
1969 }
1970 },
1971 {
1972 "desc": "NextBook Tablets",
1973 "ua": "Mozilla/5.0 (Linux; Android 5.0; NXA8QC116 Build/LRX21V) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1974 "expect": {
1975 "vendor": "NextBook",
1976 "model": "NXA8QC116",
1977 "type": "tablet"
1978 }
1979 },
1980 {
1981 "desc": "Le Pan Tablets",
1982 "ua": "Mozilla/5.0 (Linux; Android 4.2.2; Le Pan TC802A Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1983 "expect": {
1984 "vendor": "Le Pan",
1985 "model": "TC802A",
1986 "type": "tablet"
1987 }
1988 },
1989 {
1990 "desc": "Le Pan Tablets",
1991 "ua": "Mozilla/5.0 (Linux; Android 4.2.2; Le Pan TC802A Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
1992 "expect": {
1993 "vendor": "Le Pan",
1994 "model": "TC802A",
1995 "type": "tablet"
1996 }
1997 },
1998 {
1999 "desc": "Amazon Alexa Echo Show",
2000 "ua": "AlexaWebMediaPlayer/1.0.200641.0 (Linux;Android 5.1.1)",
2001 "expect": {
2002 "vendor": "Amazon",
2003 "model": "Alexa",
2004 "type": "tablet"
2005 }
2006 },
2007 {
2008 "desc": "Amazon Kindle Fire Tablet",
2009 "ua": "Mozilla/5.0 (Linux; U; Android 4.4.3; en-us; KFSAWI Build/KTU84M) AppleWebKit/537.36 (KHTML, like Gecko) Silk/3.66 like Chrome/39.0.2171.93 Safari/537.36",
2010 "expect": {
2011 "vendor": "Amazon",
2012 "model": "KFSAWI",
2013 "type": "tablet"
2014 }
2015 },
2016 {
2017 "desc": "Amazon Kindle Fire Tablet",
2018 "ua": "Mozilla/5.0 (Linux; U; Android 4.4.3; en-us; KFSAWI) AppleWebKit/537.36 (KHTML, like Gecko) Silk/3.66 like Chrome/39.0.2171.93 Safari/537.36",
2019 "expect": {
2020 "vendor": "Amazon",
2021 "model": "KFSAWI",
2022 "type": "tablet"
2023 }
2024 },
2025 {
2026 "desc": "Amazon Kindle Fire Tablet",
2027 "ua": "Mozilla/5.0 (Linux; Android 9; KFMAWI Build/PS7312; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.110 Safari/537.36",
2028 "expect": {
2029 "vendor": "Amazon",
2030 "model": "KFMAWI",
2031 "type": "tablet"
2032 }
2033 },
2034 {
2035 "desc": "Amazon Fire TV",
2036 "ua": "Mozilla/5.0 (Linux; Android 4.2.2; AFTB Build/JDQ39) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.173 Mobile Safari/537.22",
2037 "expect": {
2038 "vendor": "Amazon",
2039 "model": "B",
2040 "type": "smarttv"
2041 }
2042 },
2043 {
2044 "desc": "Amazon Fire TV",
2045 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; AFTT) AppleWebKit/537.36 (KHTML, like Gecko) Silk/86.3.20 like Chrome/86.0.4240.198 Safari/537.36",
2046 "expect": {
2047 "vendor": "Amazon",
2048 "model": "T",
2049 "type": "smarttv"
2050 }
2051 },
2052 {
2053 "desc": "Android TV",
2054 "ua": "Mozilla/5.0 (Linux; Android 10; 2020/2021 UHD Android TV Build/QTG3.201102.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) version/4.0 Chrome/83.0.4103.101 Mobile Safari/537.36",
2055 "expect": {
2056 "vendor": "undefined",
2057 "model": "undefined",
2058 "type": "smarttv"
2059 }
2060 },
2061 {
2062 "desc": "Gigaset Tablet",
2063 "ua": "Mozilla/5.0 (Linux; Android 4.2.2; Gigaset QV830 Build/JDQ39) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
2064 "expect": {
2065 "vendor": "Gigaset",
2066 "model": "QV830",
2067 "type": "tablet"
2068 }
2069 },
2070 {
2071 "desc": "HUAWEI MediaPad M3 Lite 10",
2072 "ua": "Mozilla/5.0 (Linux; Android 7.0; BAH-L09) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.80 Safari/537.36",
2073 "expect": {
2074 "vendor": "Huawei",
2075 "model": "BAH-L09",
2076 "type": "tablet"
2077 }
2078 },
2079 {
2080 "desc": "HUAWEI MediaPad M5 Lite",
2081 "ua": "Mozilla/5.0 (Linux; Android 8.0.0; BAH2-W19 Build/HUAWEIBAH2-W19; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.106 Safari/537.36",
2082 "expect": {
2083 "vendor": "Huawei",
2084 "model": "BAH2-W19",
2085 "type": "tablet"
2086 }
2087 },
2088 {
2089 "desc": "HUAWEI MediaPad M5",
2090 "ua": "Mozilla/5.0 (Linux; Android 9; SHT-AL09 Build/HUAWEISHT-AL09; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/89.0.4389.90 Mobile Safari/537.36",
2091 "expect": {
2092 "vendor": "Huawei",
2093 "model": "SHT-AL09",
2094 "type": "tablet"
2095 }
2096 },
2097 {
2098 "desc": "HUAWEI MediaPad T5",
2099 "ua": "Mozilla/5.0 (Linux; Android 8.0.0; AGS2-L09 Build/HUAWEIAGS2-L09; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/84.0.4147.125 Safari/537.36",
2100 "expect": {
2101 "vendor": "Huawei",
2102 "model": "AGS2-L09",
2103 "type": "tablet"
2104 }
2105 },
2106 {
2107 "desc": "HUAWEI MediaPad T10",
2108 "ua": "Mozilla/5.0 (Linux; Android 10; AGR-W09 Build/HUAWEIAGR-W09; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Safari/537.36",
2109 "expect": {
2110 "vendor": "Huawei",
2111 "model": "AGR-W09",
2112 "type": "tablet"
2113 }
2114 },
2115 {
2116 "desc": "HUAWEI MediaPad T10s",
2117 "ua": "Mozilla/5.0 (Linux; Android 10; AGS3-W09 Build/HUAWEIAGS3-W09; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Safari/537.36",
2118 "expect": {
2119 "vendor": "Huawei",
2120 "model": "AGS3-W09",
2121 "type": "tablet"
2122 }
2123 },
2124 {
2125 "desc": "Huawei MatePad T 10",
2126 "ua": "Mozilla/5.0 (Linux; Android 10; AGR-L09; HMSCore 5.0.4.301) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.106 HuaweiBrowser/11.0.3.304 Safari/537.36",
2127 "expect": {
2128 "vendor": "Huawei",
2129 "model": "AGR-L09",
2130 "type": "tablet"
2131 }
2132 },
2133 {
2134 "desc": "Huawei Mate 10 Pro",
2135 "ua": "Mozilla/5.0 (Linux; Android 8.0; BLA-L29 Build/HUAWEIBLA-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3236.6 Mobile Safari/537.36",
2136 "expect": {
2137 "vendor": "Huawei",
2138 "model": "BLA-L29",
2139 "type": "mobile"
2140 }
2141 },
2142 {
2143 "desc": "Huawei Mate X",
2144 "ua": "Mozilla/5.0 (Linux; Android 9; TAH-AN00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.111 Safari/537.36",
2145 "expect": {
2146 "vendor": "Huawei",
2147 "model": "TAH-AN00",
2148 "type": "mobile"
2149 }
2150 },
2151 {
2152 "desc": "Huawei Mate X2",
2153 "ua": "Mozilla/5.0 (Linux; Android 10; TET-AN00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.96 Mobile Safari/537.36",
2154 "expect": {
2155 "vendor": "Huawei",
2156 "model": "TET-AN00",
2157 "type": "mobile"
2158 }
2159 },
2160 {
2161 "desc": "Huawei Mate 20 X",
2162 "ua": "Mozilla/5.0 (Linux; Android 9; EVR-L29 Build/HUAWEIEVR-L29; xx-xx) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.110 Mobile Safari/537.36",
2163 "expect": {
2164 "vendor": "Huawei",
2165 "model": "EVR-L29",
2166 "type": "mobile"
2167 }
2168 },
2169 {
2170 "desc": "Huawei Mate 20 Pro",
2171 "ua": "Mozilla/5.0 (Linux; Android 9; LYA-L09) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
2172 "expect": {
2173 "vendor": "Huawei",
2174 "model": "LYA-L09",
2175 "type": "mobile"
2176 }
2177 },
2178 {
2179 "desc": "Huawei Mate 20 Pro",
2180 "ua": "Mozilla/5.0 (Linux; Android 9; LYA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
2181 "expect": {
2182 "vendor": "Huawei",
2183 "model": "LYA-AL00",
2184 "type": "mobile"
2185 }
2186 },
2187 {
2188 "desc": "Huawei P20 Lite",
2189 "ua": "Mozilla/5.0 (Linux; Android 8.0.0; ANE-LX1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.143 Mobile Safari/537.36",
2190 "expect": {
2191 "vendor": "Huawei",
2192 "model": "ANE-LX1",
2193 "type": "mobile"
2194 }
2195 },
2196 {
2197 "desc": "Huawei P20",
2198 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; EML-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.157 Mobile Safari/537.36",
2199 "expect": {
2200 "vendor": "Huawei",
2201 "model": "EML-L29",
2202 "type": "mobile"
2203 }
2204 },
2205 {
2206 "desc": "Huawei P20 Pro",
2207 "ua": "Mozilla/5.0 (Linux; Android 9; CLT-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.90 Mobile Safari/537.36",
2208 "expect": {
2209 "vendor": "Huawei",
2210 "model": "CLT-L29",
2211 "type": "mobile"
2212 }
2213 },
2214 {
2215 "desc": "Huawei P30",
2216 "ua": "Mozilla/5.0 (Linux; Android 9; ELE-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.90 Mobile Safari/537.36",
2217 "expect": {
2218 "vendor": "Huawei",
2219 "model": "ELE-L29",
2220 "type": "mobile"
2221 }
2222 },
2223 {
2224 "desc": "Huawei P30 Pro",
2225 "ua": "Mozilla/5.0 (Linux; Android 9; VOG-L29) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.143 Mobile Safari/537.36",
2226 "expect": {
2227 "vendor": "Huawei",
2228 "model": "VOG-L29",
2229 "type": "mobile"
2230 }
2231 },
2232 {
2233 "desc": "Huawei P40",
2234 "ua": "Mozilla/5.0 (Linux; Android 10; ANA-AN00 Build/HUAWEIANA-AN00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/76.0.3809.89 Mobile Safari/537.36 T7/11.26 SP-engine/2.22.0 baiduboxapp/11.26.0.10 (Baidu; P1 10) NABar/1.0",
2235 "expect": {
2236 "vendor": "Huawei",
2237 "model": "ANA-AN00",
2238 "type": "mobile"
2239 }
2240 },
2241 {
2242 "desc": "Huawei P40 Pro",
2243 "ua": "Mozilla/5.0 (Linux; Android 10; ELS-AN00 Build/HUAWEIELS-AN00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Mobile Safari/537.36 mailapp/6.0.0",
2244 "expect": {
2245 "vendor": "Huawei",
2246 "model": "ELS-AN00",
2247 "type": "mobile"
2248 }
2249 },
2250 {
2251 "desc": "Huawei 30 Pro+",
2252 "ua": "Mozilla/5.0 (Linux; Android 10; EBG-AN10 Build/HUAWEIEBG-AN10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.86 Mobile Safari/537.36 EdgA/42.0.0.2741",
2253 "expect": {
2254 "vendor": "Huawei",
2255 "model": "EBG-AN10",
2256 "type": "mobile"
2257 }
2258 },
2259 {
2260 "desc": "Huawei 30S",
2261 "ua": "Mozilla/5.0 (Linux; Android 10; CDY-AN90 Build/HUAWEICDY-AN90; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/78.0.3904.108 Mobile Safari/537.36 mailapp/5.8.0",
2262 "expect": {
2263 "vendor": "Huawei",
2264 "model": "CDY-AN90",
2265 "type": "mobile"
2266 }
2267 },
2268 {
2269 "desc": "Huawei Enjoy10e",
2270 "ua": "Dalvik/2.1.0 (Linux; U; Android 10; MED-AL00 Build/HUAWEIMED-AL00)",
2271 "expect": {
2272 "vendor": "Huawei",
2273 "model": "MED-AL00",
2274 "type": "mobile"
2275 }
2276 },
2277 {
2278 "desc": "Amazon Fire 7",
2279 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; KFAUWI) AppleWebKit/537.36 (KHTML, like Gecko) Silk/80.5.3 like Chrome/80.0.3987.162 Safari/537.36",
2280 "expect": {
2281 "vendor": "Amazon",
2282 "model": "KFAUWI",
2283 "type": "tablet"
2284 }
2285 },
2286 {
2287 "desc": "AT&T Radiant Core U304AA",
2288 "ua": "Dalvik/2.1.0 (Linux; U; Android 9; U304AA Build/P00610)",
2289 "expect": {
2290 "vendor": "AT&T",
2291 "model": "U304AA",
2292 "type": "mobile"
2293 }
2294 },
2295 {
2296 "desc": "Vodafone Smart Tab 4G",
2297 "ua": "Mozilla/5.0 (Linux; Android 4.4.4; Vodafone Smart Tab 4G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36",
2298 "expect": {
2299 "vendor": "Vodafone",
2300 "model": "Smart Tab 4G",
2301 "type": "tablet"
2302 }
2303 },
2304 {
2305 "desc": "Vodafone Smart ultra 6",
2306 "ua": "Mozilla/5.0 (Linux; Android 5.0.2; Vodafone Smart ultra 6 Build/LRX22G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.133 Mobile Safari/537.36",
2307 "expect": {
2308 "vendor": "Vodafone",
2309 "model": "Smart ultra 6",
2310 "type": "tablet"
2311 }
2312 },
2313 {
2314 "desc": "4ife 4K Smart TV Box",
2315 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; 4ife 4K Smart TV Box Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Safari/537.36 Vinebre",
2316 "expect": {
2317 "vendor": "undefined",
2318 "model": "undefined",
2319 "type": "smarttv"
2320 }
2321 },
2322 {
2323 "desc": "FaceBook Mobile App",
2324 "ua": "[FBAN/FBIOS;FBAV/283.0.0.44.117;FBBV/238386386;FBDV/iPhone12,1;FBMD/iPhone;FBSN/iOS;FBSV/13.6.1;FBSS/2;FBID/phone;FBLC/en_US;FBOP/5;FBRV/240127608]",
2325 "expect": {
2326 "type": "mobile"
2327 }
2328 },
2329 {
2330 "desc": "Issue #454",
2331 "ua": "Mosamzilla/5.0 (Windows; U; Win98; en-US; rv:1.7.5) Gecko/20050603 Netscape/8.0.2",
2332 "expect": {
2333 "vendor": "undefined",
2334 "model": "undefined",
2335 "type": "undefined"
2336 }
2337 },
2338 {
2339 "desc": "Alcatel",
2340 "ua": "Mozilla/5.0 (Linux; Android 4.4.2; ALCATEL A564C Build/KVT49L) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.133 Mobile Safari/537.36",
2341 "expect": {
2342 "vendor": "ALCATEL",
2343 "model": "A564C",
2344 "type": "mobile"
2345 }
2346 },
2347 {
2348 "desc": "Alcatel Go Flip",
2349 "ua": "Mozilla/5.0 (Mobile; ALCATEL4044T; rv:37.0) Gecko/37.0 Firefox/37.0 KaiOS/1.0",
2350 "expect": {
2351 "vendor": "ALCATEL",
2352 "model": "4044T",
2353 "type": "mobile"
2354 }
2355 },
2356 {
2357 "desc": "Jolla",
2358 "ua": "Mozilla/5.0 (Maemo; Linux; U; Jolla; Sailfish; Mobile; rv:31.0) Gecko/31.0 Firefox/31.0 SailfishBrowser/1.0",
2359 "expect": {
2360 "vendor": "Jolla",
2361 "model": "undefined",
2362 "type": "mobile"
2363 }
2364 },
2365 {
2366 "desc": "Xbox One",
2367 "ua": "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; Xbox; Xbox One)",
2368 "expect": {
2369 "vendor": "Microsoft",
2370 "model": "Xbox One",
2371 "type": "console"
2372 }
2373 },
2374 {
2375 "desc": "Xbox",
2376 "ua": "Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; Xbox)",
2377 "expect": {
2378 "vendor": "Microsoft",
2379 "model": "Xbox",
2380 "type": "console"
2381 }
2382 },
2383 {
2384 "desc": "Nvidia Shield Tablet",
2385 "ua": "Mozilla/5.0 (Linux; Android 5.1.1; SHIELD Tablet Build/LVY48E; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/45.0.2454.19 Safari/537.36",
2386 "expect": {
2387 "vendor": "Nvidia",
2388 "model": "SHIELD Tablet",
2389 "type": "tablet"
2390 }
2391 },
2392 {
2393 "desc": "Ouya",
2394 "ua": "Mozilla/5.0 (Linux; Android 4.1.2; OUYA Console Build/JZO54L-OUYA) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.84 Safari/537.36",
2395 "expect": {
2396 "vendor": "OUYA",
2397 "model": "undefined",
2398 "type": "console"
2399 }
2400 },
2401 {
2402 "desc": "Vivo Y52s",
2403 "ua": "Mozilla/5.0 (Linux; Android 10; V2057A Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/76.0.3809.89 Mobile Safari/537.36 T7/12.10 SP-engine/2.28.0 baiduboxapp/12.10.0.10 (Baidu; P1 10) NABar/1.0",
2404 "expect": {
2405 "vendor": "Vivo",
2406 "model": "V2057A",
2407 "type": "mobile"
2408 }
2409 },
2410 {
2411 "desc": "Vivo X60",
2412 "ua": "Mozilla/5.0 (Linux; Android 11; V2046A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/8.8.71.0",
2413 "expect": {
2414 "vendor": "Vivo",
2415 "model": "V2046A",
2416 "type": "mobile"
2417 }
2418 },
2419 {
2420 "desc": "Vivo Y79A",
2421 "ua": "Mozilla/5.0 (Linux; Android 7.1.2; vivo Y79A Build/N2G47H; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/9.0.14.0",
2422 "expect": {
2423 "vendor": "Vivo",
2424 "model": "Y79A",
2425 "type": "mobile"
2426 }
2427 },
2428 {
2429 "desc": "Vivo Y97",
2430 "ua": "Mozilla/5.0 (Linux; Android 8.1.0; V1813T Build/O11019; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/9.0.14.0",
2431 "expect": {
2432 "vendor": "Vivo",
2433 "model": "V1813T",
2434 "type": "mobile"
2435 }
2436 },
2437 {
2438 "desc": "Vivo iQOO Pro",
2439 "ua": "Mozilla/5.0 (Linux; Android 11; V1916A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/9.1.10.6",
2440 "expect": {
2441 "vendor": "Vivo",
2442 "model": "V1916A",
2443 "type": "mobile"
2444 }
2445 }
2446]
Note: See TracBrowser for help on using the repository browser.