device_detector 1.0.2 → 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +4 -5
- data/CHANGELOG.md +3 -0
- data/README.md +5 -5
- data/Rakefile +13 -0
- data/lib/device_detector/version.rb +1 -1
- data/regexes/bots.yml +89 -2
- data/regexes/client/browser_engine.yml +3 -0
- data/regexes/client/browsers.yml +325 -76
- data/regexes/client/feed_readers.yml +6 -0
- data/regexes/client/libraries.yml +9 -0
- data/regexes/client/mobile_apps.yml +40 -1
- data/regexes/client/pim.yml +5 -0
- data/regexes/device/mobiles.yml +1607 -431
- data/regexes/oss.yml +1 -1
- data/regexes/vendorfragments.yml +1 -1
- data/spec/device_detector/concrete_user_agent_spec.rb +16 -17
- data/spec/device_detector/device_spec.rb +25 -25
- data/spec/device_detector/memory_cache_spec.rb +19 -19
- data/spec/device_detector/model_extractor_spec.rb +3 -3
- data/spec/device_detector/version_extractor_spec.rb +5 -6
- data/spec/device_detector_spec.rb +26 -26
- data/spec/fixtures/client/browser.yml +655 -322
- data/spec/fixtures/client/feed_reader.yml +39 -45
- data/spec/fixtures/client/library.yml +24 -11
- data/spec/fixtures/client/mediaplayer.yml +29 -28
- data/spec/fixtures/client/mobile_app.yml +100 -41
- data/spec/fixtures/client/pim.yml +32 -19
- data/spec/fixtures/detector/bots.yml +140 -23
- data/spec/fixtures/detector/camera.yml +2 -2
- data/spec/fixtures/detector/console.yml +3 -3
- data/spec/fixtures/detector/desktop.yml +312 -73
- data/spec/fixtures/detector/feature_phone.yml +48 -0
- data/spec/fixtures/detector/feed_reader.yml +141 -126
- data/spec/fixtures/detector/mediaplayer.yml +39 -38
- data/spec/fixtures/detector/mobile_apps.yml +86 -85
- data/spec/fixtures/detector/phablet.yml +715 -236
- data/spec/fixtures/detector/portable_media_player.yml +17 -0
- data/spec/fixtures/detector/smartphone-1.yml +3534 -3512
- data/spec/fixtures/detector/smartphone-10.yml +3848 -6286
- data/spec/fixtures/detector/smartphone-11.yml +5548 -3298
- data/spec/fixtures/detector/smartphone-12.yml +8655 -0
- data/spec/fixtures/detector/smartphone-2.yml +3645 -3625
- data/spec/fixtures/detector/smartphone-3.yml +4099 -4176
- data/spec/fixtures/detector/smartphone-4.yml +3861 -3865
- data/spec/fixtures/detector/smartphone-5.yml +3991 -4037
- data/spec/fixtures/detector/smartphone-6.yml +4074 -4047
- data/spec/fixtures/detector/smartphone-7.yml +4355 -4362
- data/spec/fixtures/detector/smartphone-8.yml +4087 -4136
- data/spec/fixtures/detector/smartphone-9.yml +4420 -4408
- data/spec/fixtures/detector/smartphone.yml +2900 -2904
- data/spec/fixtures/detector/tablet-1.yml +3946 -3912
- data/spec/fixtures/detector/tablet-2.yml +3593 -3617
- data/spec/fixtures/detector/tablet-3.yml +2738 -85
- data/spec/fixtures/detector/tablet.yml +3604 -3616
- data/spec/fixtures/detector/tv.yml +131 -51
- data/spec/fixtures/detector/unknown.yml +64 -27
- data/spec/fixtures/device/camera.yml +4 -3
- data/spec/fixtures/device/car_browser.yml +3 -2
- data/spec/fixtures/device/console.yml +15 -14
- metadata +4 -2
@@ -47,6 +47,12 @@
|
|
47
47
|
url: 'http://www.chebinliu.com/projects/iphone/feeddler-rss-reader/'
|
48
48
|
type: 'Feed Reader App'
|
49
49
|
|
50
|
+
- regex: 'QuiteRSS(?:[/ ](\d+[\.\d]+))?'
|
51
|
+
name: 'QuiteRSS'
|
52
|
+
version: '$1'
|
53
|
+
url: https://quiterss.org
|
54
|
+
type: 'Feed Reader App'
|
55
|
+
|
50
56
|
- regex: 'gPodder/([\d\.]+)'
|
51
57
|
name: 'gPodder'
|
52
58
|
version: '$1'
|
@@ -82,3 +82,12 @@
|
|
82
82
|
- regex: 'HTTPie(?:/(\d+[\.\d]+))?'
|
83
83
|
name: 'HTTPie'
|
84
84
|
version: '$1'
|
85
|
+
|
86
|
+
- regex: 'rest-client/(\d+[\.\d]+).*ruby'
|
87
|
+
name: 'REST Client for Ruby'
|
88
|
+
version: '$1'
|
89
|
+
|
90
|
+
- regex: 'RestSharp/(\d+[\.\d]+)'
|
91
|
+
name: 'RestSharp'
|
92
|
+
version: '$1'
|
93
|
+
url: 'http://restsharp.org/'
|
@@ -165,4 +165,43 @@
|
|
165
165
|
regex: 'RSSRadio/([\d]+)?'
|
166
166
|
name: 'RSSRadio'
|
167
167
|
version: '$1'
|
168
|
-
|
168
|
+
-
|
169
|
+
regex: 'SogouSearch Android[\d\.]+ version([\d\.]+)?'
|
170
|
+
name: 'SogouSearch App'
|
171
|
+
version: '$1'
|
172
|
+
-
|
173
|
+
regex: 'NewsArticle/([\d\.]+)?'
|
174
|
+
name: 'NewsArticle App'
|
175
|
+
version: '$1'
|
176
|
+
-
|
177
|
+
regex: 'tieba/([\d\.]+)?'
|
178
|
+
name: 'tieba'
|
179
|
+
version: '$1'
|
180
|
+
-
|
181
|
+
regex: 'com\.douban\.group/([\d\.]+)?'
|
182
|
+
name: 'douban App'
|
183
|
+
version: '$1'
|
184
|
+
-
|
185
|
+
regex: 'BingWeb/([\d\.]+)?'
|
186
|
+
name: 'BingWebApp'
|
187
|
+
version: '$1'
|
188
|
+
-
|
189
|
+
regex: 'GSA/([\d\.]+)?'
|
190
|
+
name: 'Google Search App'
|
191
|
+
version: '$1'
|
192
|
+
-
|
193
|
+
regex: 'Flipboard/([\d\.]+)?'
|
194
|
+
name: 'Flipboard App'
|
195
|
+
version: '$1'
|
196
|
+
-
|
197
|
+
regex: 'Instagram[ /]([\d\.]+)?'
|
198
|
+
name: 'Instagram App'
|
199
|
+
version: '$1'
|
200
|
+
-
|
201
|
+
regex: 'baiduboxapp/([\d\.]+)?'
|
202
|
+
name: 'Baidu Box App'
|
203
|
+
version: '$1'
|
204
|
+
-
|
205
|
+
regex: 'Crosswalk(?!.*Streamy)/([\d\.]+)?'
|
206
|
+
name: 'CrosswalkApp'
|
207
|
+
version: '$1'
|
data/regexes/client/pim.yml
CHANGED
data/regexes/device/mobiles.yml
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
'Tunisie Telecom':
|
9
9
|
regex: 'StarTrail TT[);/ ]'
|
10
10
|
device: 'smartphone'
|
11
|
-
model: 'StarTrail'
|
11
|
+
model: 'StarTrail by TT'
|
12
12
|
|
13
13
|
# SFR
|
14
14
|
SFR:
|
@@ -29,6 +29,8 @@ SFR:
|
|
29
29
|
model: 'StarShine 2' # ZTE
|
30
30
|
- regex: 'StarShine[);/ ]'
|
31
31
|
model: 'StarShine' # Huawei U8180
|
32
|
+
- regex: 'STARADDICT 4[);/ ]'
|
33
|
+
model: 'Staraddict 4'
|
32
34
|
- regex: 'STARADDICT III[);/ ]'
|
33
35
|
model: 'Staraddict 3' # Coolpad 8861U
|
34
36
|
- regex: 'STARADDICT II Plus[);/ ]'
|
@@ -54,10 +56,12 @@ SFR:
|
|
54
56
|
|
55
57
|
# HTC
|
56
58
|
HTC:
|
57
|
-
regex: 'HTC|Sprint (?:APA|ATP)|ADR(?!910L)[a-z0-9]+|NexusHD2|Amaze[ _]4G[);/ ]|(Desire|Sensation|Evo ?3D|IncredibleS|Wildfire|Butterfly)[ _]?([^;/]+) Build|(Amaze[ _]4G|One ?[XELSV\+]+)[);/ ]|SPV E6[05]0|One M8|X525a|PG86100|PC36100|XV6975|PJ83100[);/ ]|2PYB2|0PJA10|0PJA2'
|
59
|
+
regex: 'HTC|Sprint (?:APA|ATP)|ADR(?!910L)[a-z0-9]+|NexusHD2|Amaze[ _]4G[);/ ]|(Desire|Sensation|Evo ?3D|IncredibleS|Wildfire|Butterfly)[ _]?([^;/]+) Build|(Amaze[ _]4G|One ?[XELSV\+]+)[);/ ]|SPV E6[05]0|One M8|X525a|PG86100|PC36100|XV6975|PJ83100[);/ ]|2PYB2|2PZC5|0PJA10|0PJA2'
|
58
60
|
device: 'smartphone'
|
59
61
|
models:
|
60
62
|
# explicit smartphone models
|
63
|
+
- regex: '2PZC5[);/ ]'
|
64
|
+
model: 'U11'
|
61
65
|
- regex: 'XV6975[);/ ]'
|
62
66
|
model: 'Imagio'
|
63
67
|
- regex: 'PG86100[);/ ]'
|
@@ -127,40 +131,52 @@ HTC:
|
|
127
131
|
|
128
132
|
# microsoft
|
129
133
|
Microsoft:
|
130
|
-
regex: 'KIN\.(One|Two)|RM-(?:1031|106[57]|109[02]|1096|1099|1109|
|
134
|
+
regex: 'KIN\.(One|Two)|RM-(?:1010|1031|106[57]|107[23467]|1089|109[02]|1096|1099|1109|111[34]|1127|1141|1154|994)|Microsoft; Lumia|Lumia (?:1530|1320|950|850|650|640|550|535|435)'
|
131
135
|
device: 'smartphone'
|
132
136
|
models:
|
133
137
|
- regex: 'KIN\.(One|Two)'
|
134
138
|
device: 'feature phone'
|
135
139
|
model: 'Kin $1'
|
136
140
|
|
137
|
-
- regex: 'RM-
|
138
|
-
model: 'Lumia 532'
|
139
|
-
- regex: 'RM-106[57]'
|
140
|
-
model: 'Lumia 640 XL'
|
141
|
-
- regex: 'RM-1096'
|
142
|
-
model: 'Lumia 640 XL'
|
143
|
-
- regex: 'RM-109[02]'
|
144
|
-
model: 'Lumia 535'
|
145
|
-
- regex: 'RM-1099'
|
141
|
+
- regex: 'RM-1099|Lumia 430'
|
146
142
|
model: 'Lumia 430'
|
147
|
-
- regex: 'RM-
|
148
|
-
model: 'Lumia 640'
|
149
|
-
- regex: 'RM-1114'
|
143
|
+
- regex: 'RM-1114|Lumia 435'
|
150
144
|
model: 'Lumia 435'
|
151
|
-
- regex: 'RM-
|
152
|
-
model: 'Lumia
|
153
|
-
- regex: 'RM-
|
145
|
+
- regex: 'RM-1031|Lumia 532'
|
146
|
+
model: 'Lumia 532'
|
147
|
+
- regex: 'RM-109[02]|RM-1089|Lumia 535'
|
148
|
+
model: 'Lumia 535'
|
149
|
+
- regex: 'RM-1141|Lumia 540'
|
154
150
|
model: 'Lumia 540'
|
155
|
-
- regex: 'RM-
|
151
|
+
- regex: 'RM-1127|Lumia 550'
|
152
|
+
model: 'Lumia 550'
|
153
|
+
- regex: 'RM-1010'
|
154
|
+
model: 'Lumia 638'
|
155
|
+
- regex: 'RM-106[57]|RM-1096|Lumia 640 XL'
|
156
|
+
model: 'Lumia 640 XL'
|
157
|
+
device: 'phablet'
|
158
|
+
- regex: 'RM-1109|RM-1113|RM-107[23467]|Lumia 640'
|
159
|
+
model: 'Lumia 640'
|
160
|
+
- regex: 'RM-1154|Lumia 650'
|
156
161
|
model: 'Lumia 650'
|
162
|
+
- regex: 'Lumia 850'
|
163
|
+
model: 'Lumia 850'
|
164
|
+
- regex: 'Lumia 950 XL'
|
165
|
+
model: 'Lumia 950 XL'
|
166
|
+
device: 'phablet'
|
167
|
+
- regex: 'Lumia 950'
|
168
|
+
model: 'Lumia 950'
|
169
|
+
- regex: 'RM-994|Lumia 1320'
|
170
|
+
model: 'Lumia 1320'
|
171
|
+
- regex: 'Lumia 1530'
|
172
|
+
model: 'Lumia 1530'
|
157
173
|
|
158
174
|
- regex: 'Microsoft; Lumia ([^;/)]+)[;/)]'
|
159
175
|
model: 'Lumia $1'
|
160
176
|
|
161
177
|
# NOKIA
|
162
178
|
Nokia:
|
163
|
-
regex: 'Nokia|Lumia|Maemo RX|portalmmm/2\.0 N7|portalmmm/2\.0 NK|nok[0-9]+|Symbian.*\s([a-z0-9]+)$|RX-51 N900|TA-[0-9]{4}'
|
179
|
+
regex: 'Nokia(?!Browser|Webview|; GT-I8750)|Lumia|Maemo RX|portalmmm/2\.0 N7|portalmmm/2\.0 NK|nok[0-9]+|Symbian.*\s([a-z0-9]+)$|RX-51 N900|TA-[0-9]{4}|ARM; 909'
|
164
180
|
device: 'smartphone'
|
165
181
|
models:
|
166
182
|
# Nokia branded phones by HMD Global
|
@@ -178,12 +194,121 @@ Nokia:
|
|
178
194
|
- regex: 'TA-10(04|12|52)'
|
179
195
|
model: '8'
|
180
196
|
# 2018 Models
|
181
|
-
- regex: 'Nokia
|
182
|
-
model: '
|
197
|
+
- regex: 'Nokia 8\.1'
|
198
|
+
model: '8.1'
|
199
|
+
- regex: 'Nokia 8 Sirocco'
|
200
|
+
model: '8 Sirocco'
|
201
|
+
- regex: 'Nokia 7\.1'
|
202
|
+
model: '7.1'
|
203
|
+
- regex: 'Nokia 7 plus'
|
204
|
+
model: '7 plus'
|
205
|
+
- regex: 'Nokia 6\.1 Plus'
|
206
|
+
model: '6.1 Plus'
|
207
|
+
- regex: 'Nokia 6\.1'
|
208
|
+
model: '6.1'
|
209
|
+
- regex: 'Nokia 5\.1 Plus'
|
210
|
+
model: '5.1 Plus'
|
211
|
+
- regex: 'Nokia 5\.1'
|
212
|
+
model: '5.1'
|
213
|
+
- regex: 'Nokia 3\.1'
|
214
|
+
model: '3.1'
|
215
|
+
- regex: 'Nokia 2\.1'
|
216
|
+
model: '2.1'
|
217
|
+
- regex: 'Nokia 1 Plus'
|
218
|
+
model: '1 Plus'
|
219
|
+
- regex: 'Nokia 1'
|
220
|
+
model: '1'
|
183
221
|
|
184
222
|
# Nokia phones
|
185
223
|
- regex: 'RX-51 N900'
|
186
224
|
model: 'N900'
|
225
|
+
- regex: '(?: )?(Nokia500|nokiaasha500(?:dualsim)?)(?: Build|[_);/])'
|
226
|
+
model: 'Asha 500'
|
227
|
+
- regex: 'Nokia5130c(?:-2)?'
|
228
|
+
model: '5130 XpressMusic'
|
229
|
+
- regex: 'Nokia5230'
|
230
|
+
model: 'Nuron'
|
231
|
+
- regex: 'Nokia5233'
|
232
|
+
model: '5233'
|
233
|
+
- regex: 'Nokia5800d-1'
|
234
|
+
model: '5800 XpressMusic'
|
235
|
+
- regex: 'Nokia6210Navigator'
|
236
|
+
model: 'Navigator'
|
237
|
+
- regex: 'Nokia8800e?'
|
238
|
+
model: 'Sapphire Arte'
|
239
|
+
- regex: 'NOKIA-RH-17'
|
240
|
+
model: '2280'
|
241
|
+
- regex: 'NOKIA-RH-27'
|
242
|
+
model: '6225'
|
243
|
+
- regex: 'NOKIA-RH-34'
|
244
|
+
model: '6585'
|
245
|
+
- regex: 'NOKIA-RH-48'
|
246
|
+
model: '3105'
|
247
|
+
- regex: 'NOKIA-RM-11'
|
248
|
+
model: '3205'
|
249
|
+
- regex: 'Nokia808 PureView'
|
250
|
+
model: '808 PureView'
|
251
|
+
- regex: 'Nokia ?([0-9]{4})c(?:-)?'
|
252
|
+
model: '$1 Classic'
|
253
|
+
- regex: 'Nokia ?([0-9]{4})s(?:-)?'
|
254
|
+
model: '$1 Slide'
|
255
|
+
- regex: 'Nokia ?([0-9]{4})'
|
256
|
+
model: '$1'
|
257
|
+
- regex: '(?: )?Nokia([235][0-9]{2})(?: Build|[_);/])'
|
258
|
+
model: 'Asha $1'
|
259
|
+
- regex: 'Nokia([CEX]-?[0-9]{1,2}i?)-[0-9]{1,2}u?(?: Build|[_);/])'
|
260
|
+
model: '$1'
|
261
|
+
|
262
|
+
- regex: 'Nokia;? 520T'
|
263
|
+
model: 'Lumia 520T'
|
264
|
+
- regex: 'RM-91[45]'
|
265
|
+
model: 'Lumia 520'
|
266
|
+
- regex: 'RM-997|Nokia 526'
|
267
|
+
model: 'Lumia 526'
|
268
|
+
- regex: 'RM-846'
|
269
|
+
model: 'Lumia 620'
|
270
|
+
- regex: 'RM-97[68]'
|
271
|
+
model: 'Lumia 630'
|
272
|
+
- regex: 'RM-97[45]'
|
273
|
+
model: 'Lumia 635'
|
274
|
+
- regex: 'RM-1027'
|
275
|
+
model: 'Lumia 636'
|
276
|
+
- regex: 'NOKIA;? 710'
|
277
|
+
model: 'Lumia 710'
|
278
|
+
- regex: 'Nokia;? 720T'
|
279
|
+
model: 'Lumia 720T'
|
280
|
+
- regex: 'RM-885'
|
281
|
+
model: 'Lumia 720'
|
282
|
+
- regex: 'Lumia 730'
|
283
|
+
model: 'Lumia 730'
|
284
|
+
- regex: 'RM-103[89]'
|
285
|
+
model: 'Lumia 735'
|
286
|
+
- regex: 'Nokia;? 800C'
|
287
|
+
model: 'Lumia 800C'
|
288
|
+
- regex: 'Nokia;? 800'
|
289
|
+
model: 'Lumia 800'
|
290
|
+
- regex: 'Nokia 820'
|
291
|
+
model: 'Lumia 820'
|
292
|
+
- regex: 'RM-984'
|
293
|
+
model: 'Lumia 830'
|
294
|
+
- regex: 'Nokia;? 900'
|
295
|
+
model: 'Lumia 900'
|
296
|
+
- regex: '(RM-82[12]|Nokia;? 920)(?: Build|[_);/])'
|
297
|
+
model: 'Lumia 920'
|
298
|
+
- regex: '(RM-89[23]|RM-910|Nokia;? 925)(?: Build|[a_);/])'
|
299
|
+
model: 'Lumia 925'
|
300
|
+
- regex: 'Lumia 929'
|
301
|
+
model: 'Lumia Icon'
|
302
|
+
- regex: 'RM-1045'
|
303
|
+
model: 'Lumia 930'
|
304
|
+
- regex: '(ARM; 909|NOKIA;? 909|NOKIA; id300)(?: Build|[_);/])'
|
305
|
+
model: 'Lumia 1020'
|
306
|
+
- regex: 'NOKIA;? 1520\.1'
|
307
|
+
model: 'Lumia 1520.1'
|
308
|
+
|
309
|
+
- regex: 'Nokia ([A-Za-z0-9\. ]+)(?: Build|[_);/])'
|
310
|
+
model: '$1'
|
311
|
+
|
187
312
|
- regex: 'Nokia(N[0-9]+)'
|
188
313
|
model: '$1'
|
189
314
|
- regex: 'Nokia-([a-z0-9]+)'
|
@@ -316,117 +441,160 @@ TiPhone:
|
|
316
441
|
|
317
442
|
# Apple
|
318
443
|
Apple:
|
319
|
-
regex: '(?:iTunes-)?Apple[ _]?TV|(?:Apple-|iTunes-)?(?:iPad|iPhone)|iPh[0-9],[0-9]|CFNetwork'
|
444
|
+
regex: '(?:iTunes-)?Apple[ _]?TV|(?:Apple-|iTunes-)?(?<!like )(?:iPad|iPhone)|iPh[0-9],[0-9]|CFNetwork'
|
320
445
|
models:
|
321
446
|
# specific smartphone devices
|
322
|
-
- regex: '(?:Apple-)?iPh(?:one)?1[C,]1'
|
447
|
+
- regex: '(?:Apple-)?iPh(?:one)?1[C,_]1'
|
323
448
|
model: 'iPhone'
|
324
449
|
device: 'smartphone'
|
325
|
-
- regex: '(?:Apple-)?iPh(?:one)?1[C,]2'
|
450
|
+
- regex: '(?:Apple-)?iPh(?:one)?1[C,_]2'
|
326
451
|
model: 'iPhone 3G'
|
327
452
|
device: 'smartphone'
|
328
|
-
- regex: '(?:Apple-)?iPh(?:one)?2[C,]1'
|
453
|
+
- regex: '(?:Apple-)?iPh(?:one)?2[C,_]1'
|
329
454
|
model: 'iPhone 3GS'
|
330
455
|
device: 'smartphone'
|
331
|
-
- regex: '(?:Apple-)?iPh(?:one)?3[C,][123]'
|
456
|
+
- regex: '(?:Apple-)?iPh(?:one)?3[C,_][123]'
|
332
457
|
model: 'iPhone 4'
|
333
458
|
device: 'smartphone'
|
334
|
-
- regex: '(?:Apple-)?iPh(?:one)?4[C,]1'
|
459
|
+
- regex: '(?:Apple-)?iPh(?:one)?4[C,_]1|1C2%254enohPi'
|
335
460
|
model: 'iPhone 4S'
|
336
461
|
device: 'smartphone'
|
337
|
-
- regex: '(?:Apple-)?iPh(?:one)?5[C,][12]'
|
462
|
+
- regex: '(?:Apple-)?iPh(?:one)?5[C,_][12]'
|
338
463
|
model: 'iPhone 5'
|
339
464
|
device: 'smartphone'
|
340
|
-
- regex: '(?:Apple-)?iPh(?:one)?5[C,][34]'
|
465
|
+
- regex: '(?:Apple-)?iPh(?:one)?5[C,_][34]'
|
341
466
|
model: 'iPhone 5C'
|
342
467
|
device: 'smartphone'
|
343
|
-
- regex: '(?:Apple-)?iPh(?:one)?6[C,][12]'
|
468
|
+
- regex: '(?:Apple-)?iPh(?:one)?6[C,_][12]'
|
344
469
|
model: 'iPhone 5S'
|
345
470
|
device: 'smartphone'
|
346
|
-
- regex: '(?:Apple-)?iPh(?:one)?7[C,]1'
|
471
|
+
- regex: '(?:Apple-)?iPh(?:one)?7[C,_]1|1C2%257enohPi'
|
347
472
|
model: 'iPhone 6 Plus'
|
348
473
|
device: 'phablet'
|
349
|
-
- regex: '(?:Apple-)?iPh(?:one)?7[C,]2'
|
474
|
+
- regex: '(?:Apple-)?iPh(?:one)?7[C,_]2'
|
350
475
|
model: 'iPhone 6'
|
351
476
|
device: 'smartphone'
|
352
|
-
- regex: '(?:Apple-)?iPh(?:one)?8[C,]
|
353
|
-
model: 'iPhone 6s'
|
354
|
-
device: 'smartphone'
|
355
|
-
- regex: '(?:Apple-)?iPh(?:one)?8[C,]2'
|
477
|
+
- regex: '(?:Apple-)?iPh(?:one)?8[C,_]2'
|
356
478
|
model: 'iPhone 6s Plus'
|
357
479
|
device: 'phablet'
|
358
|
-
- regex: '(?:Apple-)?iPh(?:one)?8[C,]
|
480
|
+
- regex: '(?:Apple-)?iPh(?:one)?8[C,_]1|iPhone 6s'
|
481
|
+
model: 'iPhone 6s'
|
482
|
+
device: 'smartphone'
|
483
|
+
- regex: '(?:Apple-)?iPh(?:one)?8[C,_]4'
|
359
484
|
model: 'iPhone SE'
|
360
485
|
device: 'smartphone'
|
361
|
-
- regex: '(?:Apple-)?iPh(?:one)?9[C,][13]'
|
486
|
+
- regex: '(?:Apple-)?iPh(?:one)?9[C,_][13]'
|
362
487
|
model: 'iPhone 7'
|
363
488
|
device: 'smartphone'
|
364
|
-
- regex: '(?:Apple-)?iPh(?:one)?9[C,][24]'
|
489
|
+
- regex: '(?:Apple-)?iPh(?:one)?9[C,_][24]'
|
365
490
|
model: 'iPhone 7 Plus'
|
366
491
|
device: 'phablet'
|
367
|
-
- regex: '(?:Apple-)?iPh(?:one)?10[C,][14]'
|
492
|
+
- regex: '(?:Apple-)?iPh(?:one)?10[C,_][14]'
|
368
493
|
model: 'iPhone 8'
|
369
494
|
device: 'smartphone'
|
370
|
-
- regex: '(?:Apple-)?iPh(?:one)?10[C,][25]'
|
495
|
+
- regex: '(?:Apple-)?iPh(?:one)?10[C,_][25]'
|
371
496
|
model: 'iPhone 8 Plus'
|
372
497
|
device: 'phablet'
|
373
|
-
- regex: '(?:Apple-)?iPh(?:one)?10[C,][36]'
|
498
|
+
- regex: '(?:Apple-)?iPh(?:one)?10[C,_][36]|iPhone X'
|
374
499
|
model: 'iPhone X'
|
375
500
|
device: 'phablet'
|
501
|
+
- regex: '(?:Apple-)?iPh(?:one)?11[C,_][2]'
|
502
|
+
model: 'iPhone XS'
|
503
|
+
device: 'smartphone'
|
504
|
+
- regex: '(?:Apple-)?iPh(?:one)?11[C,_][46]'
|
505
|
+
model: 'iPhone XS Max'
|
506
|
+
device: 'phablet'
|
507
|
+
- regex: '(?:Apple-)?iPh(?:one)?11[C,_][8]'
|
508
|
+
model: 'iPhone XR'
|
509
|
+
device: 'smartphone'
|
510
|
+
- regex: '(?:Apple-)?iPh(?:one)?12[C,_][1]'
|
511
|
+
model: 'iPhone 11'
|
512
|
+
device: 'smartphone'
|
513
|
+
- regex: '(?:Apple-)?iPh(?:one)?12[C,_][3]'
|
514
|
+
model: 'iPhone 11 Pro'
|
515
|
+
device: 'phablet'
|
516
|
+
- regex: '(?:Apple-)?iPh(?:one)?12[C,_][5]'
|
517
|
+
model: 'iPhone 11 Pro Max'
|
518
|
+
device: 'phablet'
|
376
519
|
|
377
520
|
# specific tablet devices
|
378
|
-
- regex: '(?:Apple-)?iPad1[C,]1'
|
521
|
+
- regex: '(?:Apple-)?iPad1[C,_]1'
|
379
522
|
model: 'iPad'
|
380
523
|
device: 'tablet'
|
381
|
-
- regex: '(?:Apple-)?iPad2[C,][1234]'
|
524
|
+
- regex: '(?:Apple-)?iPad2[C,_][1234]'
|
382
525
|
model: 'iPad 2'
|
383
526
|
device: 'tablet'
|
384
|
-
- regex: '(?:Apple-)?iPad2[C,][567]'
|
527
|
+
- regex: '(?:Apple-)?iPad2[C,_][567]'
|
385
528
|
model: 'iPad Mini'
|
386
529
|
device: 'tablet'
|
387
|
-
- regex: '(?:Apple-)?iPad3[C,][123]'
|
530
|
+
- regex: '(?:Apple-)?iPad3[C,_][123]'
|
388
531
|
model: 'iPad 3'
|
389
532
|
device: 'tablet'
|
390
|
-
- regex: '(?:Apple-)?iPad3[C,][456]'
|
533
|
+
- regex: '(?:Apple-)?iPad3[C,_][456]'
|
391
534
|
model: 'iPad 4'
|
392
535
|
device: 'tablet'
|
393
|
-
- regex: '(?:Apple-)?iPad4[C,][123]'
|
536
|
+
- regex: '(?:Apple-)?iPad4[C,_][123]'
|
394
537
|
model: 'iPad Air'
|
395
538
|
device: 'tablet'
|
396
|
-
- regex: '(?:Apple-)?iPad4[C,][456]'
|
539
|
+
- regex: '(?:Apple-)?iPad4[C,_][456]'
|
397
540
|
model: 'iPad Mini 2'
|
398
541
|
device: 'tablet'
|
399
|
-
- regex: '(?:Apple-)?iPad4[C,][789]'
|
542
|
+
- regex: '(?:Apple-)?iPad4[C,_][789]'
|
400
543
|
model: 'iPad Mini 3'
|
401
544
|
device: 'tablet'
|
402
|
-
- regex: '(?:Apple-)?iPad5[C,][12]'
|
545
|
+
- regex: '(?:Apple-)?iPad5[C,_][12]'
|
403
546
|
model: 'iPad Mini 4'
|
404
547
|
device: 'tablet'
|
405
|
-
- regex: '(?:Apple-)?iPad5[C,][34]'
|
548
|
+
- regex: '(?:Apple-)?iPad5[C,_][34]'
|
406
549
|
model: 'iPad Air 2'
|
407
550
|
device: 'tablet'
|
408
|
-
- regex: '(?:Apple-)?iPad6[C,][34]'
|
551
|
+
- regex: '(?:Apple-)?iPad6[C,_][34]'
|
409
552
|
model: 'iPad Pro 9.7'
|
410
553
|
device: 'tablet'
|
411
|
-
- regex: '(?:Apple-)?iPad6[C,][78]'
|
554
|
+
- regex: '(?:Apple-)?iPad6[C,_][78]'
|
412
555
|
model: 'iPad Pro 12.9'
|
413
556
|
device: 'tablet'
|
414
|
-
- regex: '(?:Apple-)?iPad6[C,](?:11|12)'
|
415
|
-
model: 'iPad 5'
|
557
|
+
- regex: '(?:Apple-)?iPad6[C,_](?:11|12)'
|
558
|
+
model: 'iPad 5 9.7'
|
416
559
|
device: 'tablet'
|
417
|
-
- regex: '(?:Apple-)?iPad7[C,][12]'
|
560
|
+
- regex: '(?:Apple-)?iPad7[C,_][12]'
|
418
561
|
model: 'iPad Pro 2 12.9'
|
419
562
|
device: 'tablet'
|
420
|
-
- regex: '(?:Apple-)?iPad7[C,][34]'
|
563
|
+
- regex: '(?:Apple-)?iPad7[C,_][34]'
|
421
564
|
model: 'iPad Pro 10.5'
|
422
565
|
device: 'tablet'
|
423
|
-
- regex: '(?:Apple-)?iPad7[C,][56]'
|
424
|
-
model: 'iPad 6'
|
566
|
+
- regex: '(?:Apple-)?iPad7[C,_][56]'
|
567
|
+
model: 'iPad 6 9.7'
|
568
|
+
device: 'tablet'
|
569
|
+
- regex: '(?:Apple-)?iPad7[C,_](?:11|12)'
|
570
|
+
model: 'iPad 7 10.2'
|
571
|
+
device: 'tablet'
|
572
|
+
- regex: '(?:Apple-)?iPad8[C,_][1-4]'
|
573
|
+
model: 'iPad Pro 3 11.0'
|
574
|
+
device: 'tablet'
|
575
|
+
- regex: '(?:Apple-)?iPad8[C,_][5-8]'
|
576
|
+
model: 'iPad Pro 3 12.9'
|
425
577
|
device: 'tablet'
|
426
578
|
|
579
|
+
- regex: 'Apple-?TV2[C,_]1'
|
580
|
+
model: 'Apple TV 2'
|
581
|
+
device: 'tv'
|
582
|
+
- regex: 'Apple-?TV3[C,_][12]'
|
583
|
+
model: 'Apple TV 3'
|
584
|
+
device: 'tv'
|
585
|
+
- regex: 'Apple-?TV5[C,_]3'
|
586
|
+
model: 'Apple TV 4'
|
587
|
+
device: 'tv'
|
588
|
+
- regex: 'Apple-?TV6[C,_]2'
|
589
|
+
model: 'Apple TV 4K'
|
590
|
+
device: 'tv'
|
591
|
+
|
427
592
|
- regex: '(?:iTunes-)?Apple[ _]?TV'
|
428
593
|
model: 'Apple TV'
|
429
594
|
device: 'tv'
|
595
|
+
- regex: 'HomePod'
|
596
|
+
model: 'HomePod'
|
597
|
+
device: 'smart speaker'
|
430
598
|
- regex: 'iTunes-iPad/[0-9]+(?:\.[0-9]+)* \(([^;]+);'
|
431
599
|
model: 'iPad $1'
|
432
600
|
device: 'tablet'
|
@@ -442,7 +610,7 @@ Apple:
|
|
442
610
|
|
443
611
|
# micromax
|
444
612
|
MicroMax:
|
445
|
-
regex: '(?:MicroMax[ \-\_]?[a-z0-9]+|Q327)|P70221 Build'
|
613
|
+
regex: '(?:MicroMax[ \-\_]?[a-z0-9]+|Q327)|P70221 Build|YU(5040|5530)[);/ ]'
|
446
614
|
device: 'smartphone'
|
447
615
|
models:
|
448
616
|
- regex: 'AQ5001'
|
@@ -456,6 +624,10 @@ MicroMax:
|
|
456
624
|
model: 'Bolt'
|
457
625
|
- regex: 'Q417'
|
458
626
|
model: 'Canvas Mega'
|
627
|
+
- regex: 'YU5040[);/ ]'
|
628
|
+
model: 'YU Yureka YU5040'
|
629
|
+
- regex: 'YU5530[);/ ]'
|
630
|
+
model: 'YU Yureka S YU5530'
|
459
631
|
- regex: 'Q424'
|
460
632
|
model: 'Bolt Selfie'
|
461
633
|
- regex: 'Q426'
|
@@ -468,9 +640,23 @@ MicroMax:
|
|
468
640
|
|
469
641
|
# 3Q
|
470
642
|
3Q:
|
471
|
-
regex: '
|
643
|
+
regex: 'AC0731B|AC1024C|AC7803C|BC9710AM|EL72B|LC0720C|LC0723B|LC0725B|LC0804B|LC0808B|LC0809B|LC0810C|LC0816C|LC0901D|LC1016C|MT0724B|MT0729[BD]|MT0811B|OC1020A|RC0709B|RC0710B|RC0718C|RC0719H|RC0721B|RC0722C|RC0726B|RC0734H|RC0743H|RC0817C|RC1018C|RC1019G|RC1025F|RC1301C|RC7802F|RC9711B|RC9712C|RC9716B|RC9717B|RC9724C|RC9726C|RC9727F|RC9730C|RC9731C|TS0807B|TS1013B|VM0711A|VM1017A|RC0813C|QS9719D|QS9718C|QS9715F|QS1023H|QS0815C|QS0730C|QS0728C|QS0717D|QS0716D|QS0715C|MT7801C|TS9708B|AC0732C|MT0739D|MT0812E|(?:3Q_)?ER71B'
|
472
644
|
device: 'tablet'
|
473
|
-
|
645
|
+
models:
|
646
|
+
- regex: 'MT0724B|LC0901D|LC0816C|LC0810C|LC0809B|LC0808B|LC0804B|LC0725B|LC0723B'
|
647
|
+
model: 'Qoo! P-Pad'
|
648
|
+
- regex: 'VM1017A|TS1013B|TS0807B|RC9731C|RC9730C|RC9727F|RC9726C|RC9724C|RC9717B|RC9716B|RC9712C|RC9711B|RC1301C|RC1025F|RC1019G|RC1018C|RC0817C|RC0813C|RC0743H|RC0734H|RC0726B|RC0722C|RC0721B|RC0719H|RC0718C|RC0710B|RC0709B|QS9715F|QS1023H|QS0815C|QS0730C|QS0728C|QS0717D|QS0716D|QS0715C|MT0811B|MT0739D|MT0729[BD]|LC1016C|LC0720C|BC9710AM|AC1024C|AC0731B'
|
649
|
+
model: 'Qoo! Q-Pad'
|
650
|
+
- regex: 'MT7801C|QS9718C|QS9719D|VM0711A|OC1020A'
|
651
|
+
model: 'Qoo! Surf'
|
652
|
+
- regex: 'TS9708B'
|
653
|
+
model: 'Surf TS1009B'
|
654
|
+
- regex: 'AC7803C|AC0732C'
|
655
|
+
model: 'Qoo! Lite'
|
656
|
+
- regex: 'MT0812E|RC7802F'
|
657
|
+
model: 'Qoo! Meta'
|
658
|
+
- regex: 'EL72B|(?:3Q_)?ER71B'
|
659
|
+
model: 'Qoo! Q-Book'
|
474
660
|
|
475
661
|
# 4Good
|
476
662
|
4Good:
|
@@ -480,7 +666,9 @@ MicroMax:
|
|
480
666
|
- regex: 'T700i_3G'
|
481
667
|
model: 'T700i 3G'
|
482
668
|
device: 'tablet'
|
483
|
-
- regex: '
|
669
|
+
- regex: 'S555m[_ ]4G'
|
670
|
+
model: 'People'
|
671
|
+
- regex: '(S(?:450m|501m)[_ ][43]G|Light A103)'
|
484
672
|
model: '$1'
|
485
673
|
- regex: '4Good[ _]([^;/]+) Build'
|
486
674
|
model: '$1'
|
@@ -511,7 +699,7 @@ AllCall:
|
|
511
699
|
|
512
700
|
# Bravis
|
513
701
|
Bravis:
|
514
|
-
regex: 'Bravis[ _]|A501 Bright|NB(?:106M|10[1-8]|751|7[145]|8[57]1|76)|NP101|NP 104 3G|B501'
|
702
|
+
regex: 'Bravis[ _]|A501 Bright|NB(?:106M|10[1-8]|751|7[145]|8[57]1|76)|NP101|NP 104 3G|B501|N1-570 Space'
|
515
703
|
device: 'smartphone'
|
516
704
|
models:
|
517
705
|
- regex: 'A501 Bright'
|
@@ -530,6 +718,8 @@ Bravis:
|
|
530
718
|
model: 'Trend'
|
531
719
|
- regex: 'B501'
|
532
720
|
model: 'Easy'
|
721
|
+
- regex: 'N1-570'
|
722
|
+
model: 'Space'
|
533
723
|
- regex: 'BRAVIS[ ]A554'
|
534
724
|
model: 'A554 Grand'
|
535
725
|
- regex: 'BRAVIS[ _]SLIM[ _]3G'
|
@@ -546,7 +736,7 @@ Bravis:
|
|
546
736
|
|
547
737
|
# Acer
|
548
738
|
Acer:
|
549
|
-
regex: 'acer|(?<!ZTE BLADE )a(?:101|110|2[10]0|211|50[10]|51[10]|70[10])[);/ ]|Android.*V3[67]0[);/ ]|Android.*Z1[23456]0 Build|Android.*Z5\d{2} Build|Android.*T0[234678] Build|A1-830|A1-81[01]|A3-A[1234][01]|B1-7[1235678][01]|B1-7[23]3|B1-8[1235]0|B1-A71|B3-A[12]0|B3-A3[02]|E39
|
739
|
+
regex: 'acer|(?<!ZTE BLADE )a(?:101|110|2[10]0|211|50[10]|51[10]|70[10])[);/ ]|Android.*V3[67]0[);/ ]|Android.*Z1[23456]0 Build|Android.*Z5\d{2} Build|Android.*T0[234678] Build|Android.*S55[);/ ]|A1-830|A1-81[01]|A1-7[23]4|A3-A[1234][01]|B1-7[1235678][01]|B1-7[23]3|B1-8[1235]0|B1-A71|B3-A[12]0|B3-A3[02]|E39[);/ ]|S5[12]0 Build|DA[0-9]+HQ?L[);/ ]|Aspire V5-121|Predator G9-793|GT-810'
|
550
740
|
device: 'smartphone'
|
551
741
|
models:
|
552
742
|
# smart displays
|
@@ -567,60 +757,121 @@ Acer:
|
|
567
757
|
- regex: 'A1-830'
|
568
758
|
model: 'Iconia A1'
|
569
759
|
device: 'tablet'
|
760
|
+
- regex: 'A1-7[23]4'
|
761
|
+
model: 'Iconia Talk S'
|
762
|
+
device: 'tablet'
|
570
763
|
- regex: 'A3-A[12][01]'
|
571
764
|
model: 'Iconia A3'
|
572
765
|
device: 'tablet'
|
573
766
|
- regex: 'A3-A[34]0'
|
574
767
|
model: 'Iconia Tab 10'
|
575
768
|
device: 'tablet'
|
576
|
-
- regex: 'B1-7[
|
769
|
+
- regex: 'B1-7[5678]0|B1-730HD'
|
770
|
+
model: 'Iconia One 7'
|
771
|
+
device: 'tablet'
|
772
|
+
- regex: 'B1-7[123][01]|B1-A71'
|
577
773
|
model: 'Iconia B1'
|
578
774
|
device: 'tablet'
|
579
775
|
- regex: 'B1-7[23]3'
|
580
776
|
model: 'Iconia Talk 7'
|
581
777
|
device: 'tablet'
|
582
|
-
- regex: 'B1-7[678]0'
|
583
|
-
model: 'Iconia One 7'
|
584
|
-
device: 'tablet'
|
585
778
|
- regex: 'B1-8[1235]0'
|
586
779
|
model: 'Iconia One 8'
|
587
780
|
device: 'tablet'
|
588
781
|
- regex: 'B3-A[12]0|B3-A3[02]'
|
589
782
|
model: 'Iconia One 10'
|
590
783
|
device: 'tablet'
|
784
|
+
- regex: 'A101'
|
785
|
+
model: 'Vangogh'
|
786
|
+
device: 'tablet'
|
787
|
+
- regex: 'A200'
|
788
|
+
model: 'Picasso E'
|
789
|
+
device: 'tablet'
|
790
|
+
- regex: 'A50[01]'
|
791
|
+
model: 'Picasso'
|
792
|
+
device: 'tablet'
|
793
|
+
- regex: 'Acer One 7'
|
794
|
+
model: 'One 7'
|
795
|
+
device: 'tablet'
|
796
|
+
- regex: 'GT-810'
|
797
|
+
model: 'Predator 8'
|
798
|
+
device: 'tablet'
|
591
799
|
|
592
800
|
# explicit smartphone models
|
593
|
-
- regex: 'E39
|
801
|
+
- regex: 'E39[);/ ]'
|
594
802
|
model: 'Liquid E700'
|
803
|
+
- regex: 'E310[);/ ]'
|
804
|
+
model: 'Liquid Mini'
|
805
|
+
- regex: 'E320(?:-orange)?[);/ ]'
|
806
|
+
model: 'Liquid Express'
|
807
|
+
- regex: 'E310[);/ ]'
|
808
|
+
model: 'beTouch E210'
|
595
809
|
- regex: 'Android.*V360[);/ ]'
|
596
|
-
model: 'Liquid E1'
|
810
|
+
model: 'Liquid E1 Duo'
|
597
811
|
- regex: 'Android.*V370[);/ ]'
|
598
|
-
model: 'Liquid E2'
|
599
|
-
- regex: 'S510
|
812
|
+
model: 'Liquid E2 Duo'
|
813
|
+
- regex: 'S510[);/ ]'
|
600
814
|
model: 'Liquid S1'
|
601
|
-
- regex: 'S520
|
815
|
+
- regex: 'S520[);/ ]'
|
602
816
|
model: 'Liquid S2'
|
603
|
-
- regex: '
|
817
|
+
- regex: '(?:Acer_)?P400[);/ ]'
|
818
|
+
model: 'neoTouch P400'
|
819
|
+
- regex: '(?:Acer_)?P300[);/ ]'
|
820
|
+
model: 'neoTouch P300'
|
821
|
+
- regex: '(?:Acer_)?S200[);/ ]'
|
822
|
+
model: 'neoTouch S200'
|
823
|
+
- regex: '(?:Acer_)?E100[);/ ]'
|
824
|
+
model: 'beTouch E100'
|
825
|
+
- regex: 'Android.*Z1([234])0[);/ ]'
|
604
826
|
model: 'Liquid Z$1'
|
605
|
-
- regex: 'Android.*
|
606
|
-
model: 'Liquid
|
607
|
-
- regex: 'Android.*
|
827
|
+
- regex: 'Android.*Z110[);/ ]'
|
828
|
+
model: 'Liquid Z110'
|
829
|
+
- regex: 'Android.*Z150[);/ ]'
|
830
|
+
model: 'Liquid Z5 Duo'
|
831
|
+
- regex: 'Android.*Z160[);/ ]'
|
832
|
+
model: 'Liquid Z4 Duo'
|
833
|
+
- regex: 'Android.*Z(5\d{2})[);/ ]'
|
608
834
|
model: 'Liquid Z$1'
|
609
|
-
- regex: 'Android.*
|
835
|
+
- regex: 'Android.*S57[);/ ]'
|
836
|
+
model: 'Liquid Jade Z'
|
837
|
+
- regex: 'Android.*T02[);/ ]'
|
610
838
|
model: 'Liquid Z530'
|
611
|
-
- regex: 'Android.*T03
|
839
|
+
- regex: 'Android.*T03[);/ ]'
|
612
840
|
model: 'Liquid Z630'
|
613
|
-
- regex: 'Android.*T04
|
841
|
+
- regex: 'Android.*T04[);/ ]'
|
614
842
|
model: 'Liquid Z630S'
|
615
|
-
- regex: 'Android.*T06
|
843
|
+
- regex: 'Android.*T06[);/ ]'
|
616
844
|
model: 'Liquid Zest'
|
617
|
-
- regex: 'Android.*T07
|
845
|
+
- regex: 'Android.*T07[);/ ]'
|
618
846
|
model: 'Liquid Zest 4G'
|
619
|
-
- regex: 'Android.*T08
|
847
|
+
- regex: 'Android.*T08[);/ ]'
|
620
848
|
model: 'Liquid Zest Plus'
|
621
|
-
- regex: '
|
849
|
+
- regex: 'TM01[);/ ]'
|
850
|
+
model: 'Liquid M330'
|
851
|
+
- regex: 'M220[);/ ]'
|
852
|
+
model: 'Liquid M220'
|
853
|
+
- regex: 'AcerTD600'
|
854
|
+
model: 'TD600'
|
855
|
+
- regex: 'Android.*S55[);/ ]'
|
856
|
+
model: 'Liquid Jade'
|
857
|
+
|
858
|
+
# desktop models
|
859
|
+
- regex: '(?:Acer )?(Chromebook R1[13])'
|
860
|
+
model: '$1'
|
861
|
+
device: 'desktop'
|
862
|
+
- regex: '(?:Acer )?(Chromebook 14)'
|
863
|
+
model: '$1'
|
864
|
+
device: 'desktop'
|
865
|
+
- regex: '(Aspire V5-121)'
|
866
|
+
model: '$1'
|
867
|
+
device: 'desktop'
|
868
|
+
- regex: '(Predator G9-793)'
|
869
|
+
model: '$1'
|
870
|
+
device: 'desktop'
|
871
|
+
|
872
|
+
- regex: 'Acer; ?([^;\(\)/]+)'
|
622
873
|
model: '$1'
|
623
|
-
- regex: 'Acer[ _\-]?([^;\)]+)
|
874
|
+
- regex: 'Acer(?! ?inc)[ _\-]?([^;\(\)/]+)[();/ ]'
|
624
875
|
model: '$1'
|
625
876
|
- regex: 'acer[\-_]([a-z0-9]+)'
|
626
877
|
model: '$1'
|
@@ -721,7 +972,7 @@ Arian Space:
|
|
721
972
|
|
722
973
|
# Alcatel
|
723
974
|
Alcatel:
|
724
|
-
regex: 'Alcatel|Alc[a-z0-9]+|One[ _]?Touch|idol3|(?:4003[AJ]|4009[ADEFIKMSX]|4013[DEJKMX]|4014[ADEKMX]|4015[ADNTX]|4016[ADX]|4017[ADEFSX]|4018[ADEFMX]|4024[EDX]|4027[ADNX]|4028[AEJS]|4032[ADEX]|4034[ADEFGX]|4035[ADXY]|4045[ADEX]|4047[ADFGNX]|4049[DEGMX]|4060[SW]|4114E|5009[AD]|5010[DEGSUX]|5011A|5012[DFG]|5015[ADEX]|5016[AXJ]|5017[ABDEOX]|5019D|5022[EDX]|5023[EF]|5024A|5025[
|
975
|
+
regex: 'Alcatel|Alc(?!or )[a-z0-9]+|One[ _]?Touch|idol3|(?:4003[AJ]|4009[ADEFIKMSX]|4013[DEJKMX]|4014[ADEKMX]|4015[ADNTX]|4016[ADX]|4017[ADEFSX]|4018[ADEFMX]|4024[EDX]|4027[ADNX]|4028[AEJS]|4032[ADEX]|4034[ADEFGX]|4035[ADXY]|4045[ADEX]|4047[ADFGNX]|4049[DEGMX]|4060[SW]|4114E|5009[AD]|5010[DEGSUX]|5011A|5012[DFG]|5015[ADEX]|5016[AXJ]|5017[ABDEOX]|5019D|5022[EDX]|5023[EF]|5024A|5025[DEG]|5026[AD]|5027B|5033[AX]|5033D[ _]RU|5034D|5038[ADEX]|5041C|5042[ADEFGWX]|5044[ADGIKOPSTY]|5045[ADFGIJTXY]|5046[ADGIJSTUY]|5047[DIUY]|5049[EGSWZ]|5050[ASXY]|5051[ADEJMTWX]|5052[AD]|5054[ADNSTWX]|5056[ADEGIJMNTUWX]|5057M|5058[AIY]|5059[ADXYZ]|5065[ADNWX]|5070D|5080[ADFQUX]|5085[ABCDGHIJNOQY]|5086[ADY]|5090[AIY]|5095[IKY]|5098[OS]|5099[ADYUI]|5116J|5145A|6016[ADEX]|6036[AXY]|6037[BKY]|6039[AHJKY]|6043[AD]|6044D|6045[BFIKOY]|6050[AFY]|6055[ABDHIKPUYZ]|6058[ADX]|6060S|6062W|6070K|7040[ADEFKRT]|7041[DX]|7043[AEKY]|7044[AX]|7045Y|7048[ASWX]|7055A|7070X|8030Y|8050[DEGX]|8063|9001[DIX]|9002X|9003[AX]|9024O|9005X|9007[ATX]|9008[ADIJNTUX]|9010X|9022X|9203A|A570BL|I213|I216X)[);/ ]|TIMXL'
|
725
976
|
device: 'smartphone'
|
726
977
|
models:
|
727
978
|
- regex: '(?:5022[EDX]|5070D)[);/ ]'
|
@@ -762,7 +1013,7 @@ Alcatel:
|
|
762
1013
|
model: 'One Touch Pop 3'
|
763
1014
|
- regex: '(?:5015[AE]|5016[AJ]|5065[ADWX]|5116J)[);/ ]'
|
764
1015
|
model: 'One Touch Pop 3 5"'
|
765
|
-
- regex: '(?:5025[
|
1016
|
+
- regex: '(?:5025[DEG]|5054[ADSTX])[);/ ]'
|
766
1017
|
model: 'One Touch Pop 3 5.5"'
|
767
1018
|
- regex: '5015D[);/ ]'
|
768
1019
|
model: 'One Touch Pop 3 Dual SIM'
|
@@ -790,6 +1041,8 @@ Alcatel:
|
|
790
1041
|
model: 'One Touch Dawn'
|
791
1042
|
- regex: '5024A[);/ ]'
|
792
1043
|
model: '1S'
|
1044
|
+
- regex: '5034D[);/ ]'
|
1045
|
+
model: '3L'
|
793
1046
|
- regex: '7040[RT][);/ ]'
|
794
1047
|
model: 'One Touch Fierce 2'
|
795
1048
|
- regex: '5056[NW]'
|
@@ -932,6 +1185,22 @@ Alcatel:
|
|
932
1185
|
device: 'tablet'
|
933
1186
|
- regex: '7048[ASWX][);/ ]'
|
934
1187
|
model: 'One Touch Go Play'
|
1188
|
+
- regex: '(?:Alcatel-)?OT-802[);/ ]'
|
1189
|
+
model: 'Wave'
|
1190
|
+
- regex: 'ALCATEL_ONE_TOUCH_768T[);/ ]'
|
1191
|
+
model: 'Island'
|
1192
|
+
- regex: '(?:TRIBE_)?3075A[);/ ]'
|
1193
|
+
model: 'One Touch Tribe'
|
1194
|
+
- regex: 'ALCATEL_one_touch_585[);/ ]'
|
1195
|
+
model: 'One Touch 585'
|
1196
|
+
- regex: 'ALCATEL_ONE_TOUCH_838[);/ ]'
|
1197
|
+
model: 'One Touch 838'
|
1198
|
+
- regex: 'ALCATEL_one_touch_813d[);/ ]'
|
1199
|
+
model: 'One Touch 813D'
|
1200
|
+
- regex: 'ALCATEL_one_touch_813[);/ ]'
|
1201
|
+
model: 'One Touch 813'
|
1202
|
+
- regex: 'OT871A'
|
1203
|
+
model: 'One Touch 871A'
|
935
1204
|
- regex: '(?:Alcatel[ _])?One[ _]?Touch[ _]((?:T[0-9]+|TAB[^/;]+|EVO[78](?:HD)?)) Build'
|
936
1205
|
device: 'tablet'
|
937
1206
|
model: 'One Touch $1'
|
@@ -957,6 +1226,12 @@ Alcatel:
|
|
957
1226
|
model: 'U5 Lite'
|
958
1227
|
- regex: '4047A[);/ ]'
|
959
1228
|
model: 'U5 Plus'
|
1229
|
+
- regex: '4044[CV][);/ ]'
|
1230
|
+
model: 'Quick Flip'
|
1231
|
+
- regex: '4044O[);/ ]'
|
1232
|
+
model: 'Cingular Flip 2'
|
1233
|
+
- regex: '4044[MNT][);/ ]'
|
1234
|
+
model: 'Go Flip'
|
960
1235
|
- regex: '5044[GS][);/ ]'
|
961
1236
|
model: 'U50'
|
962
1237
|
- regex: '5033[AX][);/ ]'
|
@@ -979,6 +1254,8 @@ Alcatel:
|
|
979
1254
|
model: '7'
|
980
1255
|
- regex: 'Alcatel UP'
|
981
1256
|
model: ''
|
1257
|
+
- regex: '(?:ALCATEL_)?A383G[);/ ]'
|
1258
|
+
model: 'Big Easy Plus'
|
982
1259
|
- regex: '5041C'
|
983
1260
|
model: 'TETRA'
|
984
1261
|
- regex: 'ALCATEL([^/;]+) Build'
|
@@ -992,13 +1269,19 @@ Alcatel:
|
|
992
1269
|
|
993
1270
|
# Allview
|
994
1271
|
Allview:
|
995
|
-
regex: 'Allview|A4You|A5_(?:Easy(?:_TM)?|Ready(?:_TM)?|Quad|Quad_Plus_TM)|A[56789]_Lite|A5Smiley|A6_Duo|AX4Nano|C6_Duo|E[23]_Living|E3_(?:Jump|Sign)|E4_Lite|M9_Connect|P(?:43_Easy|[5689]_Energy|6_Energy_Lite|[68]_Energy_Mini(?:_TM)?|(41|[458])_eMagic(?:_TM)?|[589](?:_)?Life(?:_TM)?|[567]_Lite(?:_TM)?|6_plus|[45678]_Pro|7_Seon|10_Style|7_Xtreme|6_Qmax|4_Quad)|V(?:[13]_Viper|1_Viper_I|2_Viper_(?:E|I|S|X|X_plus|Xe))|X(?:[1234]_Soul_Xtreme|[12345]_Soul|3_Soul_Lite|[24]Soul_Mini(?:_TM)?|4_Soul_Mini_S(?:_TM)?|[234]_Soul_Style(?:_TM)?|2_Soul_Style_Plus|2_Twin)|Viva_H801'
|
1272
|
+
regex: 'Allview|A4You|A5_(?:Easy(?:_TM)?|Ready(?:_TM)?|Quad|Quad_Plus_TM)|A[56789]_Lite|A5Smiley|A6_Duo|AX2_Frenzy|AX4Nano|AX5NanoQ|C6_Duo|E[23]_Living|E3_(?:Jump|Sign)|E4_Lite|M9_Connect|P(?:43_Easy|[5689]_Energy|6_Energy_Lite|[68]_Energy_Mini(?:_TM)?|(41|[458])_eMagic(?:_TM)?|[589](?:_)?Life(?:_TM)?|[567]_Lite(?:_TM)?|6_plus|[45678]_Pro|7_Seon|10_Style|7_Xtreme|6_Qmax|4_Quad)|V(?:[13]_Viper|1_Viper_I|2_Viper_(?:E|I|S|X|X_plus|Xe))|X(?:[1234]_Soul_Xtreme|[12345]_Soul|3_Soul_Lite|[24]Soul_Mini(?:_TM)?|4_Soul_Mini_S(?:_TM)?|[234]_Soul_Style(?:_TM)?|2_Soul_Style_Plus|2_Twin)|Viva_H801'
|
996
1273
|
device: 'smartphone'
|
997
1274
|
models:
|
998
1275
|
- regex: 'A4You'
|
999
1276
|
model: 'A4 You'
|
1277
|
+
- regex: 'AX2_Frenzy'
|
1278
|
+
model: 'AX2 Frenzy'
|
1279
|
+
device: 'tablet'
|
1000
1280
|
- regex: 'AX4Nano'
|
1001
1281
|
model: 'AX4 Nano'
|
1282
|
+
- regex: 'AX5NanoQ'
|
1283
|
+
model: 'AX5 Nano Q'
|
1284
|
+
device: 'tablet'
|
1002
1285
|
- regex: 'C6_Duo'
|
1003
1286
|
model: 'C6 Duo'
|
1004
1287
|
- regex: 'E([23])_Living'
|
@@ -1091,10 +1374,12 @@ Allview:
|
|
1091
1374
|
model: 'A5 Quad'
|
1092
1375
|
- regex: 'A6_Duo'
|
1093
1376
|
model: 'A6 Duo'
|
1094
|
-
- regex: '
|
1095
|
-
model: '
|
1096
|
-
- regex: '
|
1097
|
-
model: '
|
1377
|
+
- regex: 'Impera S'
|
1378
|
+
model: 'Impera S'
|
1379
|
+
- regex: 'ALLVIEW P4i'
|
1380
|
+
model: 'AllDro P4'
|
1381
|
+
- regex: 'Allview_P2'
|
1382
|
+
model: 'AllDro'
|
1098
1383
|
|
1099
1384
|
# explicit tablet models
|
1100
1385
|
- regex: 'AllviewCityPlus'
|
@@ -1115,6 +1400,32 @@ Allview:
|
|
1115
1400
|
- regex: 'Viva_H801'
|
1116
1401
|
device: 'tablet'
|
1117
1402
|
model: 'Viva H801'
|
1403
|
+
- regex: 'ALLVIEW ?SPEEDI'
|
1404
|
+
device: 'tablet'
|
1405
|
+
model: 'Speed I'
|
1406
|
+
- regex: 'ALLVIEW ?SPEED'
|
1407
|
+
device: 'tablet'
|
1408
|
+
model: 'Speed'
|
1409
|
+
- regex: 'ALLVIEWSPEED'
|
1410
|
+
device: 'tablet'
|
1411
|
+
model: 'Speed'
|
1412
|
+
- regex: 'AX4Nano'
|
1413
|
+
device: 'tablet'
|
1414
|
+
model: 'AX4 Nano'
|
1415
|
+
- regex: 'ALLVIEW_TX1_Quasar'
|
1416
|
+
device: 'tablet'
|
1417
|
+
model: 'TX1 Quasar'
|
1418
|
+
|
1419
|
+
- regex: 'Allview[ _-]([^;/]+) Build'
|
1420
|
+
model: '$1'
|
1421
|
+
- regex: 'Allview[ _-]([^;/]+)[;/)]'
|
1422
|
+
model: '$1'
|
1423
|
+
|
1424
|
+
# Allwinner
|
1425
|
+
Allwinner:
|
1426
|
+
regex: 'QUAD-CORE A64 p3'
|
1427
|
+
device: 'tablet'
|
1428
|
+
model: 'A64 QUAD-CORE p3'
|
1118
1429
|
|
1119
1430
|
# altron
|
1120
1431
|
altron:
|
@@ -1181,6 +1492,13 @@ Ainol:
|
|
1181
1492
|
regex: 'Numy|novo[0-9]'
|
1182
1493
|
device: 'tablet'
|
1183
1494
|
models:
|
1495
|
+
- regex: 'Numy 3G AX1'
|
1496
|
+
model: 'Novo 7 Numy AX1 3G'
|
1497
|
+
- regex: 'Numy_3G_AX3'
|
1498
|
+
model: 'Numy AX3 Sword'
|
1499
|
+
- regex: 'Numy_3G_BW1'
|
1500
|
+
model: 'Numy 3G Talos 2'
|
1501
|
+
|
1184
1502
|
- regex: 'Numy[ _]([^;/]+) Build'
|
1185
1503
|
model: 'Numy $1'
|
1186
1504
|
- regex: 'Novo([0-9]+)[ \-]([^;/]+) Build'
|
@@ -1191,6 +1509,8 @@ Archos:
|
|
1191
1509
|
regex: '(?:YL-)?Archos'
|
1192
1510
|
device: 'smartphone'
|
1193
1511
|
models:
|
1512
|
+
- regex: 'Archos (Oxygen 63)[);/ ]'
|
1513
|
+
model: '$1'
|
1194
1514
|
- regex: 'Archos ?5[);/ ]'
|
1195
1515
|
device: 'tablet'
|
1196
1516
|
model: '5'
|
@@ -1351,7 +1671,7 @@ Assistant:
|
|
1351
1671
|
|
1352
1672
|
# Ark
|
1353
1673
|
Ark:
|
1354
|
-
regex: '(ARK[_ -])?Benefit[_ -]([^/;]*) Build|EDGE A5HD|ICON (R40\+|R45)|Impulse[ _](P[12])'
|
1674
|
+
regex: '(ARK[_ -])?Benefit[_ -]([^/;]*) Build|EDGE A5HD|ICON (R40\+|R45)|Impulse[ _](P[12])|Wizard_1[/;) ]'
|
1355
1675
|
device: 'smartphone'
|
1356
1676
|
models:
|
1357
1677
|
- regex: '(?:ARK[_ -])?Benefit[_ -]([^/;]*) Build'
|
@@ -1364,6 +1684,8 @@ Ark:
|
|
1364
1684
|
model: 'Edge $1'
|
1365
1685
|
- regex: 'ICON (R40\+|R45)'
|
1366
1686
|
model: 'Icon $1'
|
1687
|
+
- regex: 'Wizard_1'
|
1688
|
+
model: 'Wizard 1'
|
1367
1689
|
|
1368
1690
|
# Garmin-Asus
|
1369
1691
|
Garmin-Asus:
|
@@ -1379,7 +1701,7 @@ Garmin-Asus:
|
|
1379
1701
|
|
1380
1702
|
# Asus
|
1381
1703
|
Asus:
|
1382
|
-
regex: 'Asus|Transformer|TF300T|Slider SL101|PadFone|ME302(?:C|KL)|ME301T|ME371MG|ME17(?:1|2V|3X)|(?:K0[01][0-9a-z]|P(?:00[18ACIL]|01[MTVWYZ]|01MA|01T_1|02[13478])(?: Build|\))|X015D|X018D|X003|X00[7ABT]D|Z00D|Z00[MTY]D|Z01[7FGHKMR]D)[);/ ]|ZB(631|602|633|55[135]|50[01])KL|ZC(55[134]|520|600)KL|ZA550KL|ZE(520|620|55[2345])KL|ZD55[23]KL|ZS6[23]0KL|
|
1704
|
+
regex: 'Asus|Transformer|TF300T|Slider SL101|PadFone|ME302(?:C|KL)|ME301T|ME371MG|ME17(?:1|2V|3X)|(?:K0[01][0-9a-z]|P(?:00[18ACIL]|01[MTVWYZ]|01MA|01T_1|02[13478])(?: Build|\))|X015D|X018D|X003|X00[7ABT]D|Z00D|Z00[MTY]D|Z01[7FGHKMR]D)[);/ ]|ZB(631|602|633|55[135]|50[01])KL|ZC(55[134]|520|600)KL|ZA550KL|ZE(520|620|55[2345])KL|ZD55[23]KL|ZS6[23]0KL|ZB(500KG|601KL)'
|
1383
1705
|
device: 'smartphone'
|
1384
1706
|
models:
|
1385
1707
|
# explicit tablet models
|
@@ -1501,6 +1823,8 @@ Asus:
|
|
1501
1823
|
model: 'ZenFone C'
|
1502
1824
|
- regex: '(?:ASUS_)?(X00PD|ZB555KL)'
|
1503
1825
|
model: 'ZenFone Max M1'
|
1826
|
+
- regex: '(?:ASUS_)?(ZB601KL)'
|
1827
|
+
model: 'ZenFone Max Pro M1'
|
1504
1828
|
- regex: '(?:ASUS_)?(X01AD|ZB633KL)'
|
1505
1829
|
model: 'ZenFone Max M2'
|
1506
1830
|
- regex: '(?:ASUS_)?(?:Z00[AD]|Z008D|Z008|Z00AD[AB]?)'
|
@@ -1583,6 +1907,8 @@ Asus:
|
|
1583
1907
|
model: 'ZenFone Zoom'
|
1584
1908
|
- regex: '(?:ASUS_)?Z01QD'
|
1585
1909
|
model: 'ROG Phone'
|
1910
|
+
- regex: '(?:ASUS_)?I001DA'
|
1911
|
+
model: 'ROG Phone 2'
|
1586
1912
|
|
1587
1913
|
# general detections
|
1588
1914
|
- regex: 'Asus(?:-|;)?([a-z0-9]+)'
|
@@ -1751,11 +2077,13 @@ Bluegood:
|
|
1751
2077
|
|
1752
2078
|
# Blackview
|
1753
2079
|
Blackview:
|
1754
|
-
regex: '(BV([2456789]000|(5[58]|9[56])00)(?:[ _](?:PRO))?|(P10000(?:[ _](?:PRO))?)|omega[ _]pro|Alife[ _][PS]1|Heatwave|DM550)'
|
2080
|
+
regex: '(BV([2456789]000|(5[58]|9[56])00)(?:[ _](?:PRO))?|(P10000(?:[ _](?:PRO))?)|omega[ _]pro|Alife[ _][PS]1|Heatwave|DM550|BV9700Pro)'
|
1755
2081
|
device: 'smartphone'
|
1756
2082
|
models:
|
1757
2083
|
- regex: '(BV6000S)'
|
1758
2084
|
model: '$1'
|
2085
|
+
- regex: '(BV9700)Pro'
|
2086
|
+
model: '$1 Pro'
|
1759
2087
|
- regex: 'BV9000Pro-F'
|
1760
2088
|
model: 'BV9000 Pro F'
|
1761
2089
|
- regex: '(BV([48]000|9[56]00))Pro'
|
@@ -1860,27 +2188,91 @@ Brondi:
|
|
1860
2188
|
model: 'SURFING TAB $1'
|
1861
2189
|
device: 'tablet'
|
1862
2190
|
|
2191
|
+
# VGO TEL
|
2192
|
+
VGO TEL:
|
2193
|
+
regex: 'Venture V8'
|
2194
|
+
device: 'smartphone'
|
2195
|
+
models:
|
2196
|
+
- regex: 'Venture V8'
|
2197
|
+
model: 'Venture V8'
|
2198
|
+
|
1863
2199
|
# Vivo
|
1864
2200
|
Vivo:
|
1865
|
-
regex: '((?:VIV-|BBG-)?vivo)|V1813BA|V1818T|V1731CA|V1809T|V1813T'
|
2201
|
+
regex: '((?:VIV-|BBG-)?vivo)|V1813BA|V1818T|V1731CA|V1809T|V1813T|V1818A'
|
1866
2202
|
device: 'smartphone'
|
1867
2203
|
models:
|
1868
|
-
- regex: '(?:VIV-|BBG-)?vivo[ _]1601
|
2204
|
+
- regex: '(?:VIV-|BBG-)?vivo[ _]1601[);/ ]'
|
1869
2205
|
model: 'V5'
|
1870
2206
|
- regex: 'V1813BA'
|
1871
2207
|
model: 'Z3'
|
2208
|
+
- regex: 'Vivo ONE'
|
2209
|
+
model: 'One'
|
2210
|
+
- regex: 'X9Plus'
|
2211
|
+
model: 'X9 Plus'
|
2212
|
+
- regex: 'X20Plus'
|
2213
|
+
model: 'X20 Plus'
|
1872
2214
|
- regex: 'V1809T'
|
1873
2215
|
model: 'X23'
|
1874
|
-
- regex: '
|
2216
|
+
- regex: 'V1818[AT]|vivo 181[45]'
|
1875
2217
|
model: 'Y93'
|
1876
2218
|
- regex: 'V1813T'
|
1877
2219
|
model: 'Y97'
|
1878
2220
|
- regex: 'V1731CA'
|
1879
2221
|
model: 'Y73'
|
1880
|
-
- regex: 'vivo
|
2222
|
+
- regex: 'vivo 18(16|20)'
|
1881
2223
|
model: 'Y91i'
|
1882
|
-
- regex: 'vivo
|
2224
|
+
- regex: 'vivo 1606'
|
2225
|
+
model: 'Y53i'
|
2226
|
+
- regex: 'vivo 1603'
|
2227
|
+
model: 'Y55l'
|
2228
|
+
- regex: 'vivo 1609'
|
2229
|
+
model: 'V5 Lite'
|
2230
|
+
- regex: 'vivo 1610'
|
2231
|
+
model: 'Y55s'
|
2232
|
+
- regex: 'vivo 1611'
|
2233
|
+
model: 'V5 Plus'
|
2234
|
+
- regex: 'vivo 181[17]'
|
1883
2235
|
model: 'Y91'
|
2236
|
+
- regex: 'vivo (1713|1612)'
|
2237
|
+
model: 'V5s'
|
2238
|
+
- regex: 'vivo 1714'
|
2239
|
+
model: 'Y69'
|
2240
|
+
- regex: 'vivo 1716'
|
2241
|
+
model: 'V7 Plus'
|
2242
|
+
- regex: 'vivo 1718'
|
2243
|
+
model: 'V7'
|
2244
|
+
- regex: 'vivo 1719'
|
2245
|
+
model: 'Y65'
|
2246
|
+
- regex: 'vivo 1723'
|
2247
|
+
model: 'V9'
|
2248
|
+
- regex: 'vivo 1726'
|
2249
|
+
model: 'Y83 Pro'
|
2250
|
+
- regex: 'vivo 1721'
|
2251
|
+
model: 'X20'
|
2252
|
+
- regex: 'vivo 1724'
|
2253
|
+
model: 'Y71'
|
2254
|
+
- regex: 'vivo 1725'
|
2255
|
+
model: 'X21'
|
2256
|
+
- regex: 'vivo 1727'
|
2257
|
+
model: 'V9 Youth'
|
2258
|
+
- regex: 'vivo 1801'
|
2259
|
+
model: 'Y71i'
|
2260
|
+
- regex: 'vivo 1804'
|
2261
|
+
model: 'V11 Pro'
|
2262
|
+
- regex: 'vivo 1805'
|
2263
|
+
model: 'Nex'
|
2264
|
+
- regex: 'vivo 1806'
|
2265
|
+
model: 'V11i'
|
2266
|
+
- regex: 'vivo 1807'
|
2267
|
+
model: 'Y95'
|
2268
|
+
- regex: 'vivo 180([38]|8i)'
|
2269
|
+
model: 'Y81'
|
2270
|
+
- regex: 'vivo 1818'
|
2271
|
+
model: 'V15 Pro'
|
2272
|
+
- regex: 'vivo 1902'
|
2273
|
+
model: 'Y17'
|
2274
|
+
- regex: 'vivo 1909'
|
2275
|
+
model: 'V17 Pro'
|
1884
2276
|
- regex: 'vivo 1812'
|
1885
2277
|
model: 'Y81i'
|
1886
2278
|
- regex: '(?:VIV-|BBG-)?vivo[ _]([^/;]+) Build'
|
@@ -1915,8 +2307,8 @@ Beeline:
|
|
1915
2307
|
regex: 'Beeline'
|
1916
2308
|
device: 'smartphone'
|
1917
2309
|
models:
|
1918
|
-
- regex: '
|
1919
|
-
model: 'Pro
|
2310
|
+
- regex: 'Beeline[_ ]Pro[_ ]([26])'
|
2311
|
+
model: 'Pro $1'
|
1920
2312
|
- regex: 'Tab (Fast|Pro)'
|
1921
2313
|
model: 'Tab $1'
|
1922
2314
|
device: 'tablet'
|
@@ -1995,230 +2387,297 @@ bq:
|
|
1995
2387
|
regex: 'Aquaris|bq [^/;]+ Build|BQS-([0-9]{4})|(BQ(ru)?[_ -][0-9]{3,4})'
|
1996
2388
|
device: 'smartphone'
|
1997
2389
|
models:
|
1998
|
-
- regex: 'BQ
|
1999
|
-
model: 'Strike
|
2000
|
-
- regex: 'BQ(ru)?-
|
2001
|
-
model: '
|
2002
|
-
- regex: 'BQ(
|
2003
|
-
model: '
|
2004
|
-
|
2005
|
-
|
2006
|
-
|
2007
|
-
|
2008
|
-
|
2009
|
-
|
2010
|
-
- regex: 'BQ-
|
2011
|
-
model: '
|
2012
|
-
|
2013
|
-
|
2014
|
-
|
2015
|
-
|
2016
|
-
- regex: 'BQ
|
2017
|
-
model: '
|
2018
|
-
|
2019
|
-
|
2020
|
-
|
2021
|
-
|
2022
|
-
- regex: 'BQ-
|
2023
|
-
model: '
|
2024
|
-
|
2025
|
-
|
2026
|
-
|
2027
|
-
|
2028
|
-
- regex: 'BQ-
|
2029
|
-
model: '
|
2030
|
-
|
2031
|
-
|
2032
|
-
|
2033
|
-
|
2034
|
-
- regex: 'BQ-
|
2035
|
-
model: '
|
2036
|
-
|
2037
|
-
|
2038
|
-
|
2039
|
-
|
2040
|
-
- regex: 'BQ-
|
2041
|
-
model: '
|
2042
|
-
|
2043
|
-
|
2390
|
+
- regex: 'BQ(ru)?-(5209L|5044)'
|
2391
|
+
model: 'Strike LTE'
|
2392
|
+
- regex: 'BQ(S|ru)?-(5070|6040L)'
|
2393
|
+
model: 'Magic'
|
2394
|
+
- regex: 'BQ-9011(G)?'
|
2395
|
+
model: 'Vision'
|
2396
|
+
device: 'tablet'
|
2397
|
+
- regex: 'BQ-8068L'
|
2398
|
+
model: 'Hornet Plus Pro'
|
2399
|
+
- regex: 'BQ-8067L'
|
2400
|
+
model: 'Hornet Plus'
|
2401
|
+
device: 'tablet'
|
2402
|
+
- regex: 'BQ-8052G'
|
2403
|
+
model: 'BQ-8052G'
|
2404
|
+
device: 'tablet'
|
2405
|
+
- regex: 'BQ-8041L'
|
2406
|
+
model: 'Art'
|
2407
|
+
device: 'tablet'
|
2408
|
+
- regex: 'BQ-7084G'
|
2409
|
+
model: 'Simple'
|
2410
|
+
device: 'tablet'
|
2411
|
+
- regex: 'BQ-7061G'
|
2412
|
+
model: 'Andros'
|
2413
|
+
device: 'tablet'
|
2414
|
+
- regex: 'BQ-7051G'
|
2415
|
+
model: 'Elba'
|
2416
|
+
device: 'tablet'
|
2417
|
+
- regex: 'BQ-7036L'
|
2418
|
+
model: 'Hornet'
|
2419
|
+
device: 'tablet'
|
2420
|
+
- regex: 'BQ-7022(G)?'
|
2421
|
+
model: 'Canion'
|
2422
|
+
device: 'tablet'
|
2423
|
+
- regex: 'BQ-7021G'
|
2424
|
+
model: 'Hit'
|
2425
|
+
device: 'tablet'
|
2426
|
+
- regex: 'BQ-7010G'
|
2427
|
+
model: 'Max'
|
2428
|
+
device: 'tablet'
|
2429
|
+
- regex: 'BQ-7006G'
|
2430
|
+
model: 'Union'
|
2431
|
+
device: 'tablet'
|
2432
|
+
- regex: 'BQ-7003'
|
2433
|
+
model: 'Jamaica'
|
2434
|
+
device: 'tablet'
|
2435
|
+
- regex: 'BQ-6200L|BQ-6000L'
|
2436
|
+
model: 'Aurora'
|
2044
2437
|
- regex: 'BQ(ru)?[ -]6015L'
|
2045
2438
|
model: 'Universe'
|
2439
|
+
- regex: 'BQ-6010G'
|
2440
|
+
model: 'Practic'
|
2046
2441
|
- regex: 'BQ-6001L|BQ-6050'
|
2047
2442
|
model: 'Jumbo'
|
2048
|
-
- regex: 'BQ-5700L'
|
2049
|
-
model: 'Space X'
|
2050
|
-
- regex: 'BQ(ru)?-5201'
|
2051
|
-
model: 'Space'
|
2052
|
-
- regex: 'BQ(ru)?-(5209L|5044)'
|
2053
|
-
model: 'Strike LTE'
|
2054
|
-
- regex: 'BQ-4526|BQ-5004G'
|
2055
|
-
model: 'Fox'
|
2056
|
-
- regex: 'BQ(ru)?[- ]402[68]'
|
2057
|
-
model: 'Up!'
|
2058
|
-
- regex: 'BQ-(4585|5011G)'
|
2059
|
-
model: 'Fox View'
|
2060
|
-
- regex: 'BQS-5025'
|
2061
|
-
model: 'High Way'
|
2062
|
-
- regex: 'BQ-5008L'
|
2063
|
-
model: 'Brave'
|
2064
|
-
- regex: 'BQ-5052'
|
2065
|
-
model: 'Sense'
|
2066
|
-
- regex: 'BQ-5512L|BQ-5528L'
|
2067
|
-
model: 'Strike Forward'
|
2068
|
-
- regex: 'BQ-5003L'
|
2069
|
-
model: 'Shark Pro'
|
2070
|
-
- regex: 'BQ-5005L'
|
2071
|
-
model: 'Intense'
|
2072
|
-
- regex: 'BQ-5522'
|
2073
|
-
model: 'Next'
|
2074
2443
|
- regex: 'BQ-5707G'
|
2075
2444
|
model: 'Next Music'
|
2445
|
+
- regex: 'BQ-5702'
|
2446
|
+
model: 'Spring'
|
2447
|
+
- regex: 'BQ-5700L'
|
2448
|
+
model: 'Space X'
|
2449
|
+
- regex: 'BQ-5594'
|
2450
|
+
model: 'Strike Power Max'
|
2076
2451
|
- regex: 'BQ-5591'
|
2077
2452
|
model: 'Jeans'
|
2078
|
-
- regex: 'BQ-
|
2079
|
-
model: '
|
2080
|
-
- regex: 'BQ
|
2081
|
-
model: '
|
2082
|
-
- regex: '
|
2083
|
-
model: '
|
2084
|
-
- regex: '
|
2085
|
-
model: '
|
2453
|
+
- regex: 'BQ-5522'
|
2454
|
+
model: 'Next'
|
2455
|
+
- regex: 'BQ(ru)?-5521'
|
2456
|
+
model: 'Strike Power Max'
|
2457
|
+
- regex: 'BQ-5520L'
|
2458
|
+
model: 'Silk'
|
2459
|
+
- regex: 'BQ-5519L'
|
2460
|
+
model: 'Fast Plus'
|
2461
|
+
- regex: 'BQ-5517L'
|
2462
|
+
model: 'Twin Pro'
|
2463
|
+
- regex: 'BQ-5516L'
|
2464
|
+
model: 'Twin'
|
2086
2465
|
- regex: 'BQS-5515'
|
2087
2466
|
model: 'Wide'
|
2088
|
-
- regex: '
|
2089
|
-
model: '
|
2467
|
+
- regex: 'BQ-5515(L)?'
|
2468
|
+
model: 'Fast'
|
2469
|
+
- regex: 'BQ-5512L|BQ-5528L'
|
2470
|
+
model: 'Strike Forward'
|
2471
|
+
- regex: 'BQ-5511L'
|
2472
|
+
model: 'Bliss'
|
2473
|
+
- regex: 'BQ(ru)?-5510'
|
2474
|
+
model: 'Strike Power Max 4G'
|
2475
|
+
- regex: 'BQ-5508L'
|
2476
|
+
model: 'Next LTE'
|
2477
|
+
- regex: 'BQ-5507L'
|
2478
|
+
model: 'Iron Max'
|
2479
|
+
- regex: 'BQ(ru)?-5504'
|
2480
|
+
model: 'Strike Selfie Max'
|
2481
|
+
- regex: 'BQ(ru)?-5503'
|
2482
|
+
model: 'Nice 2'
|
2483
|
+
- regex: 'BQS-5502'
|
2484
|
+
model: 'Hammer'
|
2485
|
+
- regex: 'BQS-5501'
|
2486
|
+
model: 'Kawasaki'
|
2090
2487
|
- regex: 'BQS-5500'
|
2091
2488
|
model: 'Vancouver'
|
2092
|
-
- regex: 'BQ
|
2093
|
-
model: '
|
2094
|
-
- regex: 'BQ
|
2095
|
-
model: 'Velvet'
|
2096
|
-
- regex: 'BQ
|
2097
|
-
model: '
|
2098
|
-
- regex: 'BQ-
|
2099
|
-
model: '
|
2489
|
+
- regex: 'BQ-5500L'
|
2490
|
+
model: 'Advance'
|
2491
|
+
- regex: 'BQ-5302G'
|
2492
|
+
model: 'Velvet 2'
|
2493
|
+
- regex: 'BQ-5301'
|
2494
|
+
model: 'Strike View'
|
2495
|
+
- regex: 'BQ-5300G'
|
2496
|
+
model: 'Velvet View'
|
2497
|
+
- regex: 'BQ(ru)?-5211|BQS-5020'
|
2498
|
+
model: 'Strike'
|
2499
|
+
- regex: 'BQ-5206L'
|
2500
|
+
model: 'Balance'
|
2501
|
+
- regex: 'BQ(ru)?-5204|BQS-5050'
|
2502
|
+
model: 'Strike Selfie'
|
2503
|
+
- regex: 'BQ(ru)?-5203'
|
2504
|
+
model: 'Vision'
|
2100
2505
|
- regex: 'BQ(ru)?-5202'
|
2101
2506
|
model: 'Space Lite'
|
2102
|
-
- regex: 'BQ(ru)?-
|
2103
|
-
model: '
|
2104
|
-
- regex: 'BQ
|
2105
|
-
model: '
|
2507
|
+
- regex: 'BQ(ru)?-5201'
|
2508
|
+
model: 'Space'
|
2509
|
+
- regex: 'BQ-5082'
|
2510
|
+
model: 'Sense 2'
|
2511
|
+
- regex: 'BQ-5071'
|
2512
|
+
model: 'Belief'
|
2513
|
+
- regex: 'BQS-5065|BQ-5340'
|
2514
|
+
model: 'Choice'
|
2106
2515
|
- regex: 'BQ(ru)?-5059|BQ-5514G'
|
2107
2516
|
model: 'Strike Power'
|
2108
|
-
- regex: 'BQ(ru)?-4072'
|
2109
|
-
model: 'Strike Mini'
|
2110
|
-
- regex: 'BQ(ru)?-5521'
|
2111
|
-
model: 'Strike Power Max'
|
2112
2517
|
- regex: 'BQ-5058'
|
2113
2518
|
model: 'Strike Power Easy'
|
2114
|
-
- regex: 'BQ-6200L|BQ-6000L'
|
2115
|
-
model: 'Aurora'
|
2116
|
-
- regex: 'BQ(ru)?-5000'
|
2117
|
-
model: 'Tokyo'
|
2118
|
-
- regex: 'BQ-6010G'
|
2119
|
-
model: 'Practic'
|
2120
|
-
- regex: 'BQ(ru)?-5204|BQS-5050'
|
2121
|
-
model: 'Strike Selfie'
|
2122
|
-
- regex: 'BQ(ru)?-5504'
|
2123
|
-
model: 'Strike Selfie Max'
|
2124
2519
|
- regex: 'BQ(ru)?-5057'
|
2125
2520
|
model: 'Strike 2'
|
2126
|
-
- regex: 'BQ
|
2127
|
-
model: '
|
2128
|
-
- regex: '
|
2129
|
-
model: '
|
2521
|
+
- regex: 'BQ-5056|BQS-5030'
|
2522
|
+
model: 'Fresh'
|
2523
|
+
- regex: 'BQS-5055'
|
2524
|
+
model: 'Turbo Plus'
|
2525
|
+
- regex: 'BQ(ru)?-5054'
|
2526
|
+
model: 'Crystal'
|
2527
|
+
- regex: 'BQ-5052'
|
2528
|
+
model: 'Sense'
|
2529
|
+
- regex: 'BQ(S)?-5045'
|
2530
|
+
model: 'Fast'
|
2531
|
+
- regex: 'BQ(ru)?-5037|BQ-5514L'
|
2532
|
+
model: 'Strike Power 4G'
|
2533
|
+
- regex: 'BQ(ru)?-5035'
|
2534
|
+
model: 'Velvet'
|
2130
2535
|
- regex: 'BQ(ru)?-5033'
|
2131
2536
|
model: 'Shark'
|
2132
|
-
- regex: 'BQ-4077'
|
2133
|
-
model: 'Shark Mini'
|
2134
2537
|
- regex: 'BQ-5032'
|
2135
2538
|
model: 'Element'
|
2136
|
-
- regex: '
|
2137
|
-
model: '
|
2138
|
-
- regex: '
|
2139
|
-
model: '
|
2140
|
-
- regex: 'BQ-
|
2141
|
-
model: '
|
2142
|
-
- regex: 'BQ-
|
2143
|
-
model: '
|
2144
|
-
- regex: '
|
2145
|
-
model: '
|
2539
|
+
- regex: 'BQS-5025'
|
2540
|
+
model: 'High Way'
|
2541
|
+
- regex: 'BQ(ru)?-5022'
|
2542
|
+
model: 'Bond'
|
2543
|
+
- regex: 'BQ-5015L'
|
2544
|
+
model: 'First'
|
2545
|
+
- regex: 'BQ-5012L'
|
2546
|
+
model: 'Rich'
|
2547
|
+
- regex: 'BQS-5011'
|
2548
|
+
model: 'Monte Carlo'
|
2549
|
+
- regex: 'BQ-5010G'
|
2550
|
+
model: 'Spot'
|
2551
|
+
- regex: 'BQS-5010'
|
2552
|
+
model: 'Prague'
|
2553
|
+
- regex: 'BQ-5009L'
|
2554
|
+
model: 'Trend'
|
2555
|
+
- regex: 'BQS-500[59]'
|
2556
|
+
model: 'Sydney'
|
2557
|
+
- regex: 'BQ-5008L'
|
2558
|
+
model: 'Brave'
|
2146
2559
|
- regex: 'BQ-5007L'
|
2147
2560
|
model: 'Iron'
|
2148
|
-
- regex: '
|
2149
|
-
model: '
|
2150
|
-
- regex: 'BQ-
|
2151
|
-
model: '
|
2152
|
-
- regex: '
|
2153
|
-
model: '
|
2154
|
-
- regex: '
|
2155
|
-
model: '
|
2156
|
-
|
2157
|
-
|
2158
|
-
|
2159
|
-
|
2160
|
-
- regex: 'BQ-
|
2161
|
-
model: '
|
2162
|
-
|
2163
|
-
|
2164
|
-
|
2165
|
-
|
2166
|
-
- regex: '
|
2167
|
-
model: '
|
2168
|
-
|
2169
|
-
|
2170
|
-
|
2171
|
-
|
2172
|
-
- regex: '
|
2173
|
-
model: '
|
2174
|
-
|
2561
|
+
- regex: 'BQS-5006'
|
2562
|
+
model: 'Los Angeles'
|
2563
|
+
- regex: 'BQ-5005L'
|
2564
|
+
model: 'Intense'
|
2565
|
+
- regex: 'BQS-5004'
|
2566
|
+
model: 'Paris'
|
2567
|
+
- regex: 'BQ-5003L'
|
2568
|
+
model: 'Shark Pro'
|
2569
|
+
- regex: 'BQ-5002G'
|
2570
|
+
model: 'Fun'
|
2571
|
+
- regex: 'BQS-5002'
|
2572
|
+
model: 'Colombo'
|
2573
|
+
- regex: 'BQ-5001L'
|
2574
|
+
model: 'Contact'
|
2575
|
+
- regex: 'BQS-5001'
|
2576
|
+
model: 'Milan'
|
2577
|
+
- regex: 'BQ(ru|S)?-5000'
|
2578
|
+
model: 'Tokyo'
|
2579
|
+
- regex: 'BQS-4800'
|
2580
|
+
model: 'Blade'
|
2581
|
+
- regex: 'BQS-4707'
|
2582
|
+
model: 'Montreal'
|
2583
|
+
- regex: 'BQS-4702'
|
2584
|
+
model: 'Оsaka'
|
2585
|
+
- regex: 'BQS-4701'
|
2586
|
+
model: 'Venice'
|
2587
|
+
- regex: 'BQ-(?:4585|5011G)'
|
2588
|
+
model: 'Fox View'
|
2589
|
+
- regex: 'BQS-4570'
|
2590
|
+
model: 'Drive'
|
2591
|
+
- regex: 'BQS-4560'
|
2592
|
+
model: 'Golf'
|
2593
|
+
- regex: 'BQS-4555'
|
2594
|
+
model: 'Turbo'
|
2595
|
+
- regex: 'BQS-4550'
|
2596
|
+
model: 'Richmond'
|
2597
|
+
- regex: 'BQ-(?:4526|5004G)'
|
2598
|
+
model: 'Fox'
|
2599
|
+
- regex: 'BQS-4525'
|
2600
|
+
model: 'Vienna'
|
2601
|
+
- regex: 'BQS-4516'
|
2602
|
+
model: 'Singapore'
|
2603
|
+
- regex: 'BQS-4515'
|
2604
|
+
model: 'Moscow'
|
2605
|
+
- regex: 'BQS-4510'
|
2606
|
+
model: 'Florence'
|
2607
|
+
- regex: 'BQS-4505'
|
2608
|
+
model: 'Santiago'
|
2609
|
+
- regex: 'BQS-4503'
|
2610
|
+
model: 'Dubai'
|
2611
|
+
- regex: 'BQS-4502'
|
2612
|
+
model: 'Kingston'
|
2613
|
+
- regex: 'BQS-4501 Bristol'
|
2614
|
+
model: 'Bristol'
|
2615
|
+
- regex: 'BQ-4501G'
|
2616
|
+
model: 'Fox Easy'
|
2617
|
+
- regex: 'BQ-4077'
|
2618
|
+
model: 'Shark Mini'
|
2619
|
+
- regex: 'BQ(ru)?-4072'
|
2620
|
+
model: 'Strike Mini'
|
2621
|
+
- regex: 'BQ(ru)?[- ]402[68]'
|
2622
|
+
model: 'Up!'
|
2623
|
+
- regex: 'BQS-4010'
|
2624
|
+
model: 'Aspen'
|
2625
|
+
- regex: 'BQS-4009'
|
2626
|
+
model: 'Orleans'
|
2627
|
+
- regex: 'BQS-4008'
|
2628
|
+
model: 'Shanghai'
|
2629
|
+
- regex: 'BQS-4007'
|
2630
|
+
model: 'Valencia'
|
2631
|
+
- regex: 'BQS-4005'
|
2632
|
+
model: 'Seoul'
|
2633
|
+
- regex: 'BQS-4004'
|
2634
|
+
model: 'Dusseldorf'
|
2635
|
+
- regex: 'BQS-4003'
|
2636
|
+
model: 'Verona'
|
2637
|
+
- regex: 'BQ-4001G'
|
2638
|
+
model: 'Cool'
|
2639
|
+
- regex: 'BQS-4001'
|
2640
|
+
model: 'Oxford'
|
2641
|
+
- regex: 'BQS-3510'
|
2642
|
+
model: 'Aspen Mini'
|
2643
|
+
- regex: 'BQS-3503'
|
2644
|
+
model: 'Bombay'
|
2175
2645
|
- regex: 'BQ-1085L'
|
2176
2646
|
model: 'Hornet Max Pro'
|
2177
2647
|
device: 'tablet'
|
2178
2648
|
- regex: 'BQ-1084L'
|
2179
2649
|
model: 'Hornet Max'
|
2180
2650
|
device: 'tablet'
|
2181
|
-
- regex: 'BQ-
|
2182
|
-
model: '
|
2183
|
-
- regex: 'BQ-7010G'
|
2184
|
-
model: 'Max'
|
2185
|
-
device: 'tablet'
|
2186
|
-
- regex: 'BQ-7051G'
|
2187
|
-
model: 'Elba'
|
2651
|
+
- regex: 'BQ-1083G'
|
2652
|
+
model: 'Armor Pro Plus'
|
2188
2653
|
device: 'tablet'
|
2189
2654
|
- regex: 'BQ-1082G'
|
2190
2655
|
model: 'Armor Pro'
|
2191
2656
|
device: 'tablet'
|
2192
|
-
- regex: 'BQ-1083G'
|
2193
|
-
model: 'Armor Pro Plus'
|
2194
|
-
device: 'tablet'
|
2195
2657
|
- regex: 'BQ-1077L'
|
2196
2658
|
model: 'Armor Pro LTE'
|
2197
2659
|
device: 'tablet'
|
2198
|
-
- regex: 'BQ
|
2199
|
-
model: '
|
2200
|
-
device: 'tablet'
|
2201
|
-
- regex: 'BQ-8041L'
|
2202
|
-
model: 'Art'
|
2203
|
-
device: 'tablet'
|
2204
|
-
- regex: 'BQ-7006G'
|
2205
|
-
model: 'Union'
|
2660
|
+
- regex: 'BQ(ru)?-1057L'
|
2661
|
+
model: 'Passion'
|
2206
2662
|
device: 'tablet'
|
2207
2663
|
- regex: 'BQ-1051G'
|
2208
2664
|
model: 'Corsika'
|
2209
2665
|
device: 'tablet'
|
2210
|
-
- regex: 'BQ-8052G'
|
2211
|
-
model: 'BQ-8052G'
|
2212
|
-
device: 'tablet'
|
2213
2666
|
- regex: 'BQ-1050G'
|
2214
2667
|
model: 'Hawaii'
|
2215
2668
|
device: 'tablet'
|
2216
2669
|
- regex: 'BQ-1008G'
|
2217
2670
|
model: 'Grace'
|
2218
2671
|
device: 'tablet'
|
2219
|
-
- regex: '
|
2220
|
-
model: '
|
2672
|
+
- regex: 'Aquaris M8'
|
2673
|
+
model: 'Aquaris M8'
|
2221
2674
|
device: 'tablet'
|
2675
|
+
- regex: 'BQ(ru)?[_ ]5590'
|
2676
|
+
model: 'Spring'
|
2677
|
+
- regex: 'BQ(S)?-(6016L|5520)'
|
2678
|
+
model: 'Mercury'
|
2679
|
+
- regex: 'BQ(S)?-(5701L|5060)'
|
2680
|
+
model: 'Slim'
|
2222
2681
|
- regex: '(BQ-7850|BQ-700[12]G|BQ-8002G|BQ-905[12]G|BQ-9702G|BQ-7056G)'
|
2223
2682
|
model: '$1'
|
2224
2683
|
device: 'tablet'
|
@@ -2243,9 +2702,15 @@ bq:
|
|
2243
2702
|
- regex: 'BQ-7050G'
|
2244
2703
|
model: 'Malta'
|
2245
2704
|
device: 'tablet'
|
2705
|
+
- regex: 'BQ-7000G'
|
2706
|
+
model: 'Сharm'
|
2707
|
+
device: 'tablet'
|
2246
2708
|
- regex: 'BQ-7005G'
|
2247
2709
|
model: 'Maui'
|
2248
2710
|
device: 'tablet'
|
2711
|
+
- regex: 'BQ-7098G'
|
2712
|
+
model: 'Armor Power'
|
2713
|
+
device: 'tablet'
|
2249
2714
|
- regex: 'BQ-1007'
|
2250
2715
|
model: 'Necker'
|
2251
2716
|
device: 'tablet'
|
@@ -2314,6 +2779,16 @@ Casio:
|
|
2314
2779
|
- regex: 'C811 4G[);/ ]'
|
2315
2780
|
model: "G'zOne Commando 4G LTE"
|
2316
2781
|
|
2782
|
+
# Casper
|
2783
|
+
Casper:
|
2784
|
+
regex: 'CASPER_|VIA_(G4|M4|P2|V8C)'
|
2785
|
+
device: 'smartphone'
|
2786
|
+
models:
|
2787
|
+
- regex: 'CASPER_VIA_(E2|M[13]|V[69])'
|
2788
|
+
model: 'VIA $1'
|
2789
|
+
- regex: 'VIA_(G4|M4|P2|V8C)'
|
2790
|
+
model: 'VIA $1'
|
2791
|
+
|
2317
2792
|
# Cat
|
2318
2793
|
Cat:
|
2319
2794
|
regex: 'Cat ?(tablet|stargate|nova)|B15Q'
|
@@ -2518,7 +2993,7 @@ ConCorde:
|
|
2518
2993
|
|
2519
2994
|
# Condor
|
2520
2995
|
Condor:
|
2521
|
-
regex: '(?:PGN\-?[456][012][0-9]|PHS\-601|Plume L1)[;/) ]|CTAB[^/;]+ Build'
|
2996
|
+
regex: 'Allure M3|(?:PGN\-?[456][012][0-9]|PHS\-601|Plume L1)[;/) ]|CTAB[^/;]+ Build'
|
2522
2997
|
device: 'smartphone'
|
2523
2998
|
models:
|
2524
2999
|
- regex: 'CTAB([^/;]+) Build'
|
@@ -2539,6 +3014,8 @@ Condor:
|
|
2539
3014
|
model: 'C8S'
|
2540
3015
|
- regex: 'PGN\-?506'
|
2541
3016
|
model: 'C7'
|
3017
|
+
- regex: 'Allure M3'
|
3018
|
+
model: 'Allure M3'
|
2542
3019
|
- regex: 'PGN\-?507'
|
2543
3020
|
model: 'Allure A9'
|
2544
3021
|
- regex: 'PGN\-?508'
|
@@ -2617,6 +3094,14 @@ Coolpad:
|
|
2617
3094
|
- regex: '(?:YL-)?Coolpad[ _\-]?([a-z0-9\-]+)'
|
2618
3095
|
model: '$1'
|
2619
3096
|
|
3097
|
+
# Clarmin
|
3098
|
+
Clarmin:
|
3099
|
+
regex: 'Clarmin'
|
3100
|
+
device: 'smartphone'
|
3101
|
+
models:
|
3102
|
+
- regex: 'Clarmin_B6'
|
3103
|
+
model: 'B6'
|
3104
|
+
|
2620
3105
|
# Cricket
|
2621
3106
|
Cricket:
|
2622
3107
|
regex: 'Cricket-([a-z0-9]+)'
|
@@ -2647,11 +3132,13 @@ Crosscall:
|
|
2647
3132
|
|
2648
3133
|
# Cube
|
2649
3134
|
Cube:
|
2650
|
-
regex: '(<!myPhone ?)Cube|(U[0-9]+GT|K8GT)'
|
3135
|
+
regex: '(<!myPhone ?)Cube|(U[0-9]+GT|K8GT)|(T8-PLUSM?S?)[);/ ]'
|
2651
3136
|
device: 'tablet'
|
2652
3137
|
models:
|
2653
3138
|
- regex: 'U27GT'
|
2654
3139
|
model: 'Talk 8'
|
3140
|
+
- regex: 'T8-PLUSM?S?[);/ ]'
|
3141
|
+
model: 'T8 Ultimate'
|
2655
3142
|
- regex: 'U55GT'
|
2656
3143
|
model: 'Talk 79'
|
2657
3144
|
- regex: 'U65GT'
|
@@ -2689,7 +3176,7 @@ CUBOT:
|
|
2689
3176
|
model: 'Power'
|
2690
3177
|
- regex: 'CUBOT_X18_Plus'
|
2691
3178
|
model: 'X18 Plus'
|
2692
|
-
- regex: 'CUBOT[ _](H3|J3|P7|P20|
|
3179
|
+
- regex: 'CUBOT[ _](A5|C6W|H3|J3|P7|P20|R9|R11|X18)'
|
2693
3180
|
model: '$1'
|
2694
3181
|
- regex: 'CUBOT ([^;/]+) Build'
|
2695
3182
|
model: '$1'
|
@@ -2774,6 +3261,12 @@ Dell:
|
|
2774
3261
|
models:
|
2775
3262
|
- regex: 'XCD35'
|
2776
3263
|
model: 'XCD35'
|
3264
|
+
- regex: '(?:Dell )?Venue Build'
|
3265
|
+
model: 'Venue'
|
3266
|
+
device: 'smartphone'
|
3267
|
+
- regex: 'Dell; Venue Pro'
|
3268
|
+
model: 'Venue Pro'
|
3269
|
+
device: 'smartphone'
|
2777
3270
|
- regex: '(?:Dell )?(Streak|Venue) ?([^/;]*) Build'
|
2778
3271
|
model: '$1 $2'
|
2779
3272
|
device: 'tablet'
|
@@ -2797,7 +3290,7 @@ Desay:
|
|
2797
3290
|
|
2798
3291
|
# DEXP
|
2799
3292
|
DEXP:
|
2800
|
-
regex: 'DEXP|(?:Ursus|Ixion)[ _]([^;/)]+)|H135[ _]Build'
|
3293
|
+
regex: 'DEXP|(?:Ursus|Ixion)[ _]([^;/)]+)|H135[ _]Build|(BL150|BS155|BS160|BS550|BS650)[);/ ]'
|
2801
3294
|
device: 'smartphone'
|
2802
3295
|
models:
|
2803
3296
|
|
@@ -2811,7 +3304,8 @@ DEXP:
|
|
2811
3304
|
- regex: 'H135[ _]Build'
|
2812
3305
|
model: 'Atlas'
|
2813
3306
|
device: 'desktop'
|
2814
|
-
|
3307
|
+
- regex: '(BL150|BS155|BS160|BS550|BS650)[);/ ]'
|
3308
|
+
model: '$1'
|
2815
3309
|
- regex: 'DEXP[ _]([^;/]+) Build'
|
2816
3310
|
model: '$1'
|
2817
3311
|
- regex: 'DEXP[ _]([^);/]+)[);/ ]'
|
@@ -2862,7 +3356,7 @@ Digiland:
|
|
2862
3356
|
|
2863
3357
|
# Digma
|
2864
3358
|
Digma:
|
2865
|
-
regex: 'Digma[_ ]([^;/]+) Build|HIT HT707[10]MG|CITI 1902 3G|(CITI (?:[A-Z0-9]+) 3G) C[ST]500[67]PG|iDrQ10 3G|iDxD8 3G|iDnD7|HIT 4G HT7074ML|IDX5|(iDx10|iDx7)|MVM900H(?:WZ|C)|MVM908HCZ|iDxD10 3G|(iDxD[45]|iDxQ5)|iDxD7[_ ]3G|PS604M|PT452E|Linx A400 3G LT4001PG|Linx C500 3G LT5001PG|Linx PS474S|NS6902QL|NS9797MG|((?:Optima|Platina|Plane)[ _](?:[EM])?(?:[0-9\.ST]+|Prime)(?:[ _][43]G)?)|(VOX[ _](?:[0-9\.A-Z]+)[_ ][43]G)'
|
3359
|
+
regex: 'Digma[_ ]([^;/]+) Build|HIT HT707[10]MG|CITI 1902 3G|(CITI (?:[A-Z0-9]+) 3G) C[ST]500[67]PG|iDrQ10 3G|iDxD8 3G|iDnD7|HIT 4G HT7074ML|IDX5|(iDx10|iDx7)|MVM900H(?:WZ|C)|MVM908HCZ|iDxD10 3G|(iDxD[45]|iDxQ5)|iDxD7[_ ]3G|PS604M|PT452E|Linx A400 3G LT4001PG|Linx C500 3G LT5001PG|Linx PS474S|LS504[01]PL|LT40(47|54)MG|LS405[01]MG|LS5053ML|LT5048MG|LT5052ML|LT4049PG|NS6902QL|NS9797MG|((?:Optima|Platina|Plane)[ _](?:[EM])?(?:[0-9\.ST]+|Prime)(?:[ _][43]G)?)|(VOX[ _](?:[0-9\.A-Z]+)[_ ][43]G)'
|
2866
3360
|
device: 'smartphone'
|
2867
3361
|
models:
|
2868
3362
|
- regex: 'HIT HT707[10]MG'
|
@@ -2877,6 +3371,26 @@ Digma:
|
|
2877
3371
|
model: '$1'
|
2878
3372
|
- regex: 'PS604M'
|
2879
3373
|
model: 'Linx 6.0'
|
3374
|
+
- regex: 'LT4049PG'
|
3375
|
+
model: 'Linx Atom 3G'
|
3376
|
+
- regex: 'LT5048MG'
|
3377
|
+
model: 'Linx Joy 3G'
|
3378
|
+
- regex: 'LT5052ML'
|
3379
|
+
model: 'Linx Base 4G'
|
3380
|
+
- regex: 'LT4047MG'
|
3381
|
+
model: 'Linx Alfa 3G'
|
3382
|
+
- regex: 'LS4050MG'
|
3383
|
+
model: 'Linx X1 3G'
|
3384
|
+
- regex: 'LS4051MG'
|
3385
|
+
model: 'Linx X1 Pro 3G'
|
3386
|
+
- regex: 'LT4054MG'
|
3387
|
+
model: 'Linx Argo 3G'
|
3388
|
+
- regex: 'LS5041PL'
|
3389
|
+
model: 'Linx Trix 4G'
|
3390
|
+
- regex: 'LS5040PL'
|
3391
|
+
model: 'Linx Rage 4G'
|
3392
|
+
- regex: 'LS5053ML'
|
3393
|
+
model: 'Linx Pay 4G'
|
2880
3394
|
- regex: '(Linx A400 3G) LT4001PG'
|
2881
3395
|
model: '$1'
|
2882
3396
|
- regex: '(Linx C500 3G) LT5001PG'
|
@@ -2940,7 +3454,7 @@ DoCoMo:
|
|
2940
3454
|
|
2941
3455
|
# Doogee
|
2942
3456
|
Doogee:
|
2943
|
-
regex: 'DOOGEE[ _-]|Valencia2_Y100pro|X5max(?:[_ ]PRO)?|(BIGBOY|COLLO[23]?|DAGGER|DISCOVERY2?|FIND|HOTWIND|LATTE|MAX|MINT|MOON|PIXELS|RAINBOX|TURBO|VALENCIA|VOYAGER2?|TITANS2?)[ -_](DG[0-9]+C?)[);/ ]|BL[579]000[);/ ]|BL12000|BL5500[_ ]Lite'
|
3457
|
+
regex: 'DOOGEE[ _-]|Valencia2_Y100pro|X5max(?:[_ ]PRO)?|(KISSME|BIGBOY|COLLO[23]?|DAGGER|DISCOVERY2?|FIND|HOTWIND|LATTE|MAX|MINT|MOON|PIXELS|RAINBOX|TURBO|VALENCIA|VOYAGER2?|TITANS2?)[ -_](DG[0-9]+C?)[);/ ]|BL[579]000[);/ ]|BL12000|BL5500[_ ]Lite'
|
2944
3458
|
device: 'smartphone'
|
2945
3459
|
models:
|
2946
3460
|
- regex: 'Valencia2_Y100pro'
|
@@ -2953,6 +3467,8 @@ Doogee:
|
|
2953
3467
|
model: 'BL5500 Lite'
|
2954
3468
|
- regex: 'BL12000'
|
2955
3469
|
model: 'BL12000'
|
3470
|
+
- regex: 'KISSME-DG580'
|
3471
|
+
model: 'Kissme DG580'
|
2956
3472
|
- regex: '(X5max(?:[_ ]PRO)?)'
|
2957
3473
|
model: '$1'
|
2958
3474
|
- regex: '(?:DOOGEE[ _-])?(BIGBOY|COLLO[23]?|DAGGER|DISCOVERY2?|FIND|HOTWIND|LATTE|MAX|MINT|MOON|PIXELS|RAINBOX|TURBO|VALENCIA|Valencia2_Y100pro|VOYAGER2?|TITANS2?)[ -_](DG[0-9]+C?)[);/ ]'
|
@@ -3147,6 +3663,17 @@ Evercoss:
|
|
3147
3663
|
- regex: 'A75A\*'
|
3148
3664
|
model: 'A75A Star'
|
3149
3665
|
|
3666
|
+
# Eurostar
|
3667
|
+
Eurostar:
|
3668
|
+
regex: '(ET7002C-H12|Onyx-[13]S)[/;) ]'
|
3669
|
+
device: 'smartphone'
|
3670
|
+
models:
|
3671
|
+
- regex: 'Onyx-([13]S)[/;) ]'
|
3672
|
+
model: 'Onyx $1'
|
3673
|
+
- regex: 'ET7002C-H12[/;) ]'
|
3674
|
+
model: 'ePad 4S'
|
3675
|
+
device: 'tablet'
|
3676
|
+
|
3150
3677
|
# Eton
|
3151
3678
|
Eton:
|
3152
3679
|
regex: 'Eton'
|
@@ -3169,6 +3696,12 @@ Rikomagic:
|
|
3169
3696
|
device: 'tv'
|
3170
3697
|
model: 'MK$1'
|
3171
3698
|
|
3699
|
+
# Rinno
|
3700
|
+
Rinno:
|
3701
|
+
regex: 'Rinno (R(?:400|505))'
|
3702
|
+
device: 'smartphone'
|
3703
|
+
model: '$1'
|
3704
|
+
|
3172
3705
|
# Riviera
|
3173
3706
|
Riviera:
|
3174
3707
|
regex: 'RIVIERA '
|
@@ -3185,7 +3718,7 @@ Senseit:
|
|
3185
3718
|
|
3186
3719
|
# Sony & Sony Ericsson (combined as they are mixed up)
|
3187
3720
|
Sony:
|
3188
|
-
regex: 'Sony(?: ?Ericsson)?|SGP|Xperia|([456]0[12]|701)SO|C1[569]0[45]|C2[01]0[45]|C230[45]|C530[236]|C550[23]|C6[56]0[236]|C6616|C68(?:0[26]|[34]3)|C69(?:0[236]|16|43)|D200[45]|D21(?:0[45]|14)|D22(?:0[236]|12|43)|D230[2356]|D240[36]|D25(?:02|33)|D510[236]|D530[36]|D5316|D5322|D5503|D58[03]3|D65(?:0[23]|43|63)|D66[03458]3|D66[14]6|D6708|E(?:20[0345]3|2006|210[45]|2115|2124|230[36]|2312|23[356]3|530[36]|53[3456]3|5506|55[356]3|56[46305][36]|58[02]3|65[35]3|66[0358]3|68[358]3)|F311[12356]|F331[13]|F321[12356]|F5[13]21|F5122|F813[12]|F833[12]|G312[135]|G311[26]|G322[136]|G3212|G331[123]|G3412|G3416|G342[136]|G823[12]|G834[123]|G8[14]4[12]|H(?:3113|3123|3133|3213|3223|3311|3321|4113|4133|4213|4233|4311|4331|4413|4433|82[167]6|83[12]4|8416|9436)|(?:WT|LT|SO|ST|SK|MK)[0-9]+[a-z]+[0-9]*(?: Build|\))|X?L39H|XM50[ht]|W960|portalmmm/2\.0 K|S3[69]h|SOL2[246]|SOV3[1234567]|X10[ia]v?|E1[05][ai]v?|MT[0-9]{2}[a-z]? Build|SO-0(?:[12]C|[345]D|[234]E|[1235]F|[1234]G|[134]H|[1234]J|
|
3721
|
+
regex: 'Sony(?: ?Ericsson)?|SGP|Xperia|([456]0[12]|701)SO|C1[569]0[45]|C2[01]0[45]|C230[45]|C530[236]|C550[23]|C6[56]0[236]|C6616|C68(?:0[26]|[34]3)|C69(?:0[236]|16|43)|D200[45]|D21(?:0[45]|14)|D22(?:0[236]|12|43)|D230[2356]|D240[36]|D25(?:02|33)|D510[236]|D530[36]|D5316|D5322|D5503|D58[03]3|D65(?:0[23]|43|63)|D66[03458]3|D66[14]6|D6708|E(?:20[0345]3|2006|210[45]|2115|2124|230[36]|2312|23[356]3|530[36]|53[3456]3|5506|55[356]3|56[46305][36]|58[02]3|65[35]3|66[0358]3|68[358]3)|I[34]312|I4332|F311[12356]|F331[13]|F321[12356]|F5[13]21|F5122|F813[12]|F833[12]|G312[135]|G311[26]|G322[136]|G3212|G331[123]|G3412|G3416|G342[136]|G823[12]|G834[123]|G8[14]4[12]|H(?:3113|3123|3133|3213|3223|3311|3321|4113|4133|4213|4233|4311|4331|4413|4433|82[167]6|83[12]4|8416|9436)|(?:WT|LT|SO|ST|SK|MK)[0-9]+[a-z]+[0-9]*(?: Build|\))|X?L39H|XM50[ht]|W960|portalmmm/2\.0 K|S3[69]h|SOL2[246]|SOV3[1234567]|X10[ia]v?|E1[05][ai]v?|MT[0-9]{2}[a-z]? Build|SO-0(?:[12]C|[345]D|[234]E|[1235]F|[1234]G|[134]H|[1234]J|[12]K)|R800[aix]|J9110|J81[17]0|I[34]113|I3[12]23|I42[19]3|H9493|H8296|H8166|H4493|LiveWithWalkman'
|
3189
3722
|
device: 'smartphone'
|
3190
3723
|
models:
|
3191
3724
|
# SONY ERICSSON: explicit smartphone models
|
@@ -3314,9 +3847,11 @@ Sony:
|
|
3314
3847
|
# SONY: explicit smartphone models
|
3315
3848
|
- regex: 'SO-04G'
|
3316
3849
|
model: 'Xperia A4'
|
3317
|
-
- regex: '(?:Sony(?:Ericsson)?)?
|
3850
|
+
- regex: '(?:Sony(?:Ericsson)?)?I(?:4113|31[12]3)'
|
3851
|
+
model: 'Xperia 10'
|
3852
|
+
- regex: '(?:Sony(?:Ericsson)?)?I(?:42[19]3|3223)'
|
3318
3853
|
model: 'Xperia 10 Plus'
|
3319
|
-
- regex: '(?:Sony(?:Ericsson)?)?
|
3854
|
+
- regex: '(?:Sony(?:Ericsson)?)?J(?:9110|81[17]0)'
|
3320
3855
|
model: 'Xperia 1'
|
3321
3856
|
- regex: '(?:Sony(?:Ericsson)?)?LT22i'
|
3322
3857
|
model: 'Xperia P'
|
@@ -3397,6 +3932,10 @@ Sony:
|
|
3397
3932
|
model: 'Xperia L2'
|
3398
3933
|
- regex: 'H43[13]1'
|
3399
3934
|
model: 'Xperia L2 Dual'
|
3935
|
+
- regex: 'I3312'
|
3936
|
+
model: 'Xperia L3'
|
3937
|
+
- regex: 'I43[13]2'
|
3938
|
+
model: 'Xperia L3 Dual'
|
3400
3939
|
- regex: '(?:Sony(?:Ericsson)?)?D2302'
|
3401
3940
|
model: 'Xperia M2 Dual'
|
3402
3941
|
- regex: '(?:Sony(?:Ericsson)?)?D230[356]'
|
@@ -3469,7 +4008,7 @@ Sony:
|
|
3469
4008
|
model: 'Xperia XA Ultra Dual'
|
3470
4009
|
- regex: '(?:Sony(?:Ericsson)?)?F833[12]|SOV34|601SO|SO-01J'
|
3471
4010
|
model: 'Xperia XZ'
|
3472
|
-
- regex: '(?:Sony(?:Ericsson)?)?(?:701SO|SOV36|G834[123])'
|
4011
|
+
- regex: '(?:Sony(?:Ericsson)?)?(?:701SO|SOV36|G834[123]|SO-01K)'
|
3473
4012
|
model: 'Xperia XZ1'
|
3474
4013
|
- regex: '(?:Sony(?:Ericsson)?)?G8441|SO-02K'
|
3475
4014
|
model: 'Xperia XZ1 Compact'
|
@@ -3658,6 +4197,17 @@ eTouch:
|
|
3658
4197
|
device: 'smartphone'
|
3659
4198
|
model: '$1'
|
3660
4199
|
|
4200
|
+
# Etuline
|
4201
|
+
Etuline:
|
4202
|
+
regex: '(ETL-S(?:3520|4521|5042|5084|6022)|ETL-T(?:752G|882G|9[78]0))[/); ]'
|
4203
|
+
device: 'smartphone'
|
4204
|
+
models:
|
4205
|
+
- regex: '(ETL-S(?:[^/); ]+))'
|
4206
|
+
model: '$1'
|
4207
|
+
- regex: '(ETL-T(?:[^/); ]+))'
|
4208
|
+
device: 'tablet'
|
4209
|
+
model: '$1'
|
4210
|
+
|
3661
4211
|
# Storex
|
3662
4212
|
Storex:
|
3663
4213
|
regex: "eZee[^a-z]*Tab ?([^;/]*) Build|STOREX LinkBox"
|
@@ -3687,6 +4237,8 @@ Evolio:
|
|
3687
4237
|
models:
|
3688
4238
|
- regex: 'M4MAGIC'
|
3689
4239
|
model: 'M4 Magic'
|
4240
|
+
- regex: 'Evolio_M5Pro'
|
4241
|
+
model: 'M5 Pro'
|
3690
4242
|
- regex: 'Evolio[ _](M6|S4 Cobalt|S5|X10|Yuppi)'
|
3691
4243
|
model: '$1'
|
3692
4244
|
|
@@ -3811,6 +4363,12 @@ Fairphone:
|
|
3811
4363
|
device: 'smartphone'
|
3812
4364
|
model: '$1'
|
3813
4365
|
|
4366
|
+
# Famoco
|
4367
|
+
Famoco:
|
4368
|
+
regex: '(FX[123]00)'
|
4369
|
+
device: 'smartphone'
|
4370
|
+
model: '$1'
|
4371
|
+
|
3814
4372
|
# FiGO
|
3815
4373
|
FiGO:
|
3816
4374
|
regex: 'ATRIUM II F55L2|TRIO F40LT|EPIC F50G|Gravity X55L|Orion M50L|ULTRA M50G|M405B|VIRTUE3|F55L Build'
|
@@ -3930,8 +4488,10 @@ G-TiDE:
|
|
3930
4488
|
models:
|
3931
4489
|
- regex: 'Shining7'
|
3932
4490
|
model: 'Shining 7'
|
3933
|
-
- regex: 'G-TiDE_(A1|
|
4491
|
+
- regex: 'G-TiDE_(A1|S[34])'
|
3934
4492
|
model: '$1'
|
4493
|
+
- regex: 'G-TiDE V6'
|
4494
|
+
model: 'V6'
|
3935
4495
|
- regex: 'E(57|60|66|72|77)'
|
3936
4496
|
model: '$1'
|
3937
4497
|
|
@@ -3992,6 +4552,9 @@ Ginzzu:
|
|
3992
4552
|
models:
|
3993
4553
|
- regex: 'GINZZU[_ ]?(S40[17]0|S4710|ST6040)'
|
3994
4554
|
model: '$1'
|
4555
|
+
- regex: 'GINZZU[_ ]?(GT-7105)'
|
4556
|
+
model: '$1'
|
4557
|
+
device: 'tablet'
|
3995
4558
|
- regex: '(RS6[12]D) ULTIMATE'
|
3996
4559
|
model: '$1 Ultimate'
|
3997
4560
|
- regex: '((?:RS(?:7[14]|81|9[67])D)|S50[45]0|S5120|S40[23]0|RS8502|RS9602|RS94D)[);/ ]'
|
@@ -3999,7 +4562,7 @@ Ginzzu:
|
|
3999
4562
|
|
4000
4563
|
# Gionee
|
4001
4564
|
Gionee:
|
4002
|
-
regex: '(?:GIO-)?GIONEE[ _-]?[a-z0-9]+|(?:Dream_D1|V188S?|GN[0-9]{3,4}[a-z]?)[);/ ]|F103(?: Pro)? Build|P5 mini Build|M7 Power '
|
4565
|
+
regex: '(?:GIO-)?GIONEE[ _-]?[a-z0-9]+|(?:Dream_D1|V188S?|GN[0-9]{3,4}[a-z]?)[);/ ]|F103(?: Pro)? Build|P5 mini Build|P7 Max Build|M7 Power '
|
4003
4566
|
device: 'smartphone'
|
4004
4567
|
models:
|
4005
4568
|
- regex: 'GN810[);/ ]'
|
@@ -4017,6 +4580,8 @@ Gionee:
|
|
4017
4580
|
model: 'M7 Power'
|
4018
4581
|
- regex: 'P5 mini Build'
|
4019
4582
|
model: 'P5 mini'
|
4583
|
+
- regex: 'P7 Max Build'
|
4584
|
+
model: 'P7 Max'
|
4020
4585
|
- regex: '(?:(?:GIO-)?GIONEE[ _-])?Dream_D1[);/ ]'
|
4021
4586
|
model: 'Dream D1'
|
4022
4587
|
- regex: '(?:GIO-)?GIONEE[ _-]([a-z0-9_-]+).*Android'
|
@@ -4104,7 +4669,7 @@ Goly:
|
|
4104
4669
|
|
4105
4670
|
# Google
|
4106
4671
|
Google:
|
4107
|
-
regex: 'Nexus|GoogleTV|Glass|CrKey[^a-z0-9]|Pixel Build|Pixel (?:XL|C|[23]|[23] XL)'
|
4672
|
+
regex: 'Nexus|GoogleTV|Glass|CrKey[^a-z0-9]|Pixel(?: Build|\))|Pixel (?:XL|C|[23]|[23] XL)'
|
4108
4673
|
device: 'smartphone'
|
4109
4674
|
models:
|
4110
4675
|
- regex: 'Glass'
|
@@ -4125,7 +4690,7 @@ Google:
|
|
4125
4690
|
- regex: 'GoogleTV'
|
4126
4691
|
device: 'tv'
|
4127
4692
|
model: 'GoogleTV'
|
4128
|
-
- regex: 'Pixel Build'
|
4693
|
+
- regex: 'Pixel(?: Build|\))'
|
4129
4694
|
model: 'Pixel'
|
4130
4695
|
- regex: 'Pixel XL'
|
4131
4696
|
model: 'Pixel XL'
|
@@ -4257,6 +4822,17 @@ Hi-Level:
|
|
4257
4822
|
device: 'tablet'
|
4258
4823
|
model: 'HLV-T$1'
|
4259
4824
|
|
4825
|
+
# Hoffmann
|
4826
|
+
Hoffmann:
|
4827
|
+
regex: '(HOFFMANN|Neo[_ ]A[139]00)[);/ ]'
|
4828
|
+
device: 'smartphone'
|
4829
|
+
models:
|
4830
|
+
- regex: 'Neo[_ ](A[139]00)'
|
4831
|
+
model: 'Neo $1'
|
4832
|
+
- regex: 'HOFFMANN[ _]X[-_ ](Prime|Twist)'
|
4833
|
+
model: 'X $1'
|
4834
|
+
|
4835
|
+
|
4260
4836
|
# Homtom
|
4261
4837
|
Homtom:
|
4262
4838
|
regex: 'Homtom|(?:HT[0-9]{1,2})(?: ?Pro)?[);/ ]'
|
@@ -4285,23 +4861,33 @@ Hoozo:
|
|
4285
4861
|
|
4286
4862
|
# Huawei
|
4287
4863
|
Huawei:
|
4288
|
-
regex: '(HW-)?(?:Huawei|Ideos|Honor[ _]?|(?:(?:AGS|AGS2|ALE|ALP|AMN|ANE|ARE|ATH|ATU|AUM|BAC|BAH|BG2|BGO|BKK|BKL|BLA|BLL|BLN|BND|BTV|CAG|CAM|CAN|CAZ|CHC|CHE[12]?|CHM|CLT|CMR|COL|COR|CPN|CRO|CRR|CUN|DIG|DIG|DLI|DRA|DUA|DUB|DUK|EDI|ELE|EML|EVA|EVR|FDR|FIG|FLA|FRD|GRA|HMA|HRY|HWI|H[36]0|INE|JAT|JDN2|JKM|JMM|JSN|KIW|KOB|KSA|LDN|LLD|LND|LON|LUA|
|
4864
|
+
regex: '(HW-)?(?:Huawei|Ideos|Honor[ _]?|(?:(?:AGS|AGS2|ALE|ALP|AMN|ANE|ARE|ARS|ATH|ATU|AUM|BAC|BAH|BAH2|BG2|BGO|BKK|BKL|BLA|BLL|BLN|BND|BTV|CAG|CAM|CAN|CAZ|CHC|CHE[12]?|CHM|CLT|CMR|COL|COR|CPN|CRO|CRR|CUN|DIG|DIG|DLI|DRA|DUA|DUB|DUK|EDI|ELE|EML|EVA|EVR|FDR|FIG|FLA|FRD|GRA|HLK|HMA|HRY|HWI|H[36]0|INE|JAT|JDN|JDN2|JKM|JMM|JSN|KIW|KNT|KOB|KSA|LDN|LLD|LND|LON|LUA|LY[AO]|MAR|MHA|MRD|MYA|NCE|NEM|NEO|NXT|PAR|PCT|PIC|PLE|PLK|POT|PRA|RIO|RNE|RVL|SCC|SCL|SEA|SHT|SLA|SNE|STF|STK|TAG|TIT|TNY|TRT|VCE|VEN|VIE|VKY|VNS|VOG|VRD|VTR|WAS|YAL|G(?:527|620S|621|630|735)|Y(?:221|330|550|6[23]5))-(?:[A-Z]{0,2}[0-9]{1,4}[A-Z]{0,2}?)|H1711|U(?:8230|8500|8661|8665|8667|8800|8818|8860|9200|9508))[);/ ])|hi6210sft|HRY-LX1MEB|GEM-70[1-3]L|PE-UL00|VRD-W09'
|
4289
4865
|
device: 'smartphone'
|
4290
4866
|
models:
|
4867
|
+
- regex: 'ARS-([AT]L00|L22)[);/ ]'
|
4868
|
+
model: 'Y Max'
|
4291
4869
|
- regex: 'U(8230|8661|8667)[);/ ]'
|
4292
4870
|
model: 'U$1'
|
4293
4871
|
- regex: 'TAG-[ACT]L00'
|
4294
4872
|
model: 'Enjoy 5S'
|
4295
|
-
- regex: '
|
4296
|
-
model: 'Enjoy
|
4297
|
-
- regex: '
|
4873
|
+
- regex: 'DIG-(?:TL10|AL00)'
|
4874
|
+
model: 'Enjoy 6S'
|
4875
|
+
- regex: 'NCE-AL[10]0'
|
4876
|
+
model: 'Enjoy 6'
|
4877
|
+
- regex: 'SLA-(?:AL00|TL10)'
|
4878
|
+
model: 'Enjoy 7' # Nova Lite (2017)
|
4879
|
+
- regex: 'DUA-[TA]L00'
|
4880
|
+
model: 'Honor Play 7'
|
4881
|
+
- regex: 'FIG-(?:AL[10]0|TL10)'
|
4298
4882
|
model: 'Enjoy 7S'
|
4299
|
-
- regex: 'LDN-(?:
|
4883
|
+
- regex: 'LDN-(?:AL[12]0|TL20)'
|
4300
4884
|
model: 'Enjoy 8'
|
4301
|
-
- regex: 'ATU-AL1'
|
4885
|
+
- regex: 'ATU-(?:AL1|TL10)'
|
4302
4886
|
model: 'Enjoy 8e'
|
4303
4887
|
- regex: 'FLA-AL10'
|
4304
4888
|
model: 'Enjoy 8 Plus'
|
4889
|
+
- regex: 'MRD-[TA]L00'
|
4890
|
+
model: 'Enjoy 9e'
|
4305
4891
|
- regex: 'U8500[);/ ]'
|
4306
4892
|
model: 'Ideos X2'
|
4307
4893
|
- regex: 'U8510[);/ ]'
|
@@ -4342,21 +4928,30 @@ Huawei:
|
|
4342
4928
|
model: 'Ascend Y550'
|
4343
4929
|
- regex: 'U9508[);/ ]'
|
4344
4930
|
model: 'Honor 2'
|
4345
|
-
- regex: 'YAL-L21
|
4931
|
+
- regex: 'YAL-(?:L21|AL00)'
|
4346
4932
|
model: 'Honor 20'
|
4933
|
+
- regex: 'YAL-L41[);/ ]'
|
4934
|
+
model: 'Honor 20 Pro'
|
4347
4935
|
- regex: 'VOG-AL00[);/ ]'
|
4348
4936
|
model: 'Honor P30 Pro'
|
4349
|
-
- regex: 'CHE2?-[UT]L00[HM]?|CHE1-CL[12]0|CHE2-L(?:
|
4937
|
+
- regex: 'CHE2?-[UT]L00[HM]?|CHE1-CL[12]0|CHE2-L(?:1[12]|23)|Che1-L04|CHE-TL00'
|
4350
4938
|
model: 'Honor 4X'
|
4351
4939
|
- regex: 'CHM-[CUT]L00[HM]?'
|
4352
4940
|
model: 'Honor Play 4C'
|
4941
|
+
- regex: 'JDN-AL00'
|
4942
|
+
model: 'Honor Pad 2'
|
4943
|
+
device: 'tablet'
|
4944
|
+
- regex: 'JAT-AL00'
|
4945
|
+
model: 'Honor Play 8A'
|
4946
|
+
- regex: 'KNT-(?:AL[12]0|[TU]L10)'
|
4947
|
+
model: 'Honor V8'
|
4353
4948
|
- regex: 'DUK-AL20'
|
4354
4949
|
model: 'Honor V9'
|
4355
4950
|
- regex: 'JMM-AL[10]0'
|
4356
4951
|
model: 'Honor V9 Play'
|
4357
4952
|
- regex: 'BKL-(?:AL00|AL20|AL30|L09|TL10)'
|
4358
4953
|
model: 'Honor V10'
|
4359
|
-
- regex: 'PCT-
|
4954
|
+
- regex: 'PCT-[TA]L10'
|
4360
4955
|
model: 'Honor V20'
|
4361
4956
|
- regex: 'BKL-L04'
|
4362
4957
|
model: 'Honor View 10'
|
@@ -4370,7 +4965,7 @@ Huawei:
|
|
4370
4965
|
model: 'Honor 4A'
|
4371
4966
|
- regex: '(?:Honor_|HW-)?CAM-(?:AL00|TL00H|TL00)(?:_TD)?[);/ ]'
|
4372
4967
|
model: 'Honor 5A'
|
4373
|
-
- regex: '(?:Honor_|HW-)?KIW-(?:AL10|TL00H|L2[124]|UL00)(?:_TD)?[);/ ]'
|
4968
|
+
- regex: '(?:Honor_|HW-)?KIW-(?:AL10|TL00H|[TC]L00|L2[124]|UL00)(?:_TD)?[);/ ]'
|
4374
4969
|
model: 'Honor 5X'
|
4375
4970
|
- regex: '(?:Honor_|HW-)?CHM-U01(?:_TD)?[);/ ]'
|
4376
4971
|
model: 'Honor 4C'
|
@@ -4378,21 +4973,23 @@ Huawei:
|
|
4378
4973
|
model: 'Honor 6'
|
4379
4974
|
- regex: 'MYA-TL10'
|
4380
4975
|
model: 'Honor 6 Play'
|
4976
|
+
- regex: 'PE-UL00'
|
4977
|
+
model: 'Honor 6 Plus'
|
4381
4978
|
- regex: '(?:Honor_|HW-)?SCL-L01(?:_TD)?[);/ ]'
|
4382
4979
|
model: 'Honor Y6'
|
4383
4980
|
- regex: '(?:Honor_|HW-)?LYO-L21'
|
4384
|
-
model: 'Honor Y6 II Compact'
|
4981
|
+
model: 'Honor Y6 II Compact' # Honor 5A
|
4385
4982
|
- regex: '(?:Honor_|HW-)?PLK-(?:AL10|CL00|TL00|TL01H?|UL00|L01)[);/ ]'
|
4386
4983
|
model: 'Honor 7'
|
4387
|
-
- regex: 'AUM-(?:AL[20]0|L33)'
|
4984
|
+
- regex: 'AUM-(?:AL[20]0|L33[A]?|TL20)'
|
4388
4985
|
model: 'Honor 7A'
|
4389
4986
|
- regex: 'AUM-L29'
|
4390
4987
|
model: 'Honor 7A Pro'
|
4391
|
-
- regex: '(?:Honor_|HW-)?(?:LND-AL[34]0|
|
4988
|
+
- regex: '(?:Honor_|HW-)?(?:LND-(?:AL[34]0|L29|TL40)|AUM-L41)[);/ ]'
|
4392
4989
|
model: 'Honor 7C'
|
4393
|
-
- regex: '(?:Honor_|HW-)?DUA-L22[);/ ]'
|
4990
|
+
- regex: '(?:Honor_|HW-)?DUA-(?:L22|LX3)[);/ ]'
|
4394
4991
|
model: 'Honor 7S'
|
4395
|
-
- regex: '(?:Honor_|HW-)?NEM-(?:AL10|L51|UL10)[);/ ]'
|
4992
|
+
- regex: '(?:Honor_|HW-)?NEM-(?:AL10|L51|UL10|TL00)[);/ ]'
|
4396
4993
|
model: 'Honor 5C'
|
4397
4994
|
- regex: '(?:Honor_|HW-)?NEM-(?:L22|TL00H)[);/ ]'
|
4398
4995
|
model: 'Honor 5C Dual SIM'
|
@@ -4404,7 +5001,7 @@ Huawei:
|
|
4404
5001
|
model: 'Honor 6C Pro'
|
4405
5002
|
- regex: '(?:HONOR[ _]?)?BLN-(?:L2[124]|AL[1234]0|TL[01]0)'
|
4406
5003
|
model: 'Honor 6X'
|
4407
|
-
- regex: 'ATH-AL00'
|
5004
|
+
- regex: 'ATH-(?:AL00|UL00|TL00H)'
|
4408
5005
|
model: 'Honor 7i'
|
4409
5006
|
- regex: '(?:HONOR[ _]?)?BND-(?:AL[01]0|TL10|L2[14]|L31)'
|
4410
5007
|
model: 'Honor 7X'
|
@@ -4418,21 +5015,23 @@ Huawei:
|
|
4418
5015
|
model: 'Honor 8X'
|
4419
5016
|
- regex: 'KSA-LX9'
|
4420
5017
|
model: 'Honor 8S'
|
4421
|
-
- regex: 'ARE-AL[10]0|
|
5018
|
+
- regex: 'ARE-(?:AL[10]0|L22HN|TL00)'
|
4422
5019
|
model: 'Honor 8X Max'
|
4423
5020
|
- regex: 'PRA-(?:AL00X|AL00|TL10)'
|
4424
5021
|
model: 'Honor 8 Lite'
|
4425
|
-
- regex: 'DUK-L09'
|
5022
|
+
- regex: 'DUK-(?:L09|TL30)'
|
4426
5023
|
model: 'Honor 8 Pro'
|
4427
5024
|
- regex: 'JAT-L41'
|
4428
5025
|
model: 'Honor 8A Pro'
|
4429
5026
|
- regex: 'VEN-L22'
|
4430
5027
|
model: 'Honor 8 Smart'
|
4431
|
-
- regex: 'STF-(?:AL[10]0|L09)'
|
5028
|
+
- regex: 'STF-(?:AL[10]0|L09|TL10)'
|
4432
5029
|
model: 'Honor 9'
|
5030
|
+
- regex: 'HLK-AL00'
|
5031
|
+
model: 'Honor 9X'
|
4433
5032
|
- regex: 'LLD-AL[23]0'
|
4434
5033
|
model: 'Honor 9i'
|
4435
|
-
- regex: 'LLD-(?:AL[01]0|L[23]1)'
|
5034
|
+
- regex: 'LLD-(?:AL[01]0|L[23]1|TL10)'
|
4436
5035
|
model: 'Honor 9 Lite'
|
4437
5036
|
- regex: 'COL-(?:AL[01]0|TL[01]0|L29)'
|
4438
5037
|
model: 'Honor 10'
|
@@ -4446,7 +5045,7 @@ Huawei:
|
|
4446
5045
|
model: 'Honor Holly 4 Plus'
|
4447
5046
|
- regex: 'TNY-AL00'
|
4448
5047
|
model: 'Honor Magic 2'
|
4449
|
-
- regex: 'COR-(?:AL[01]0|L29)'
|
5048
|
+
- regex: 'COR-(?:AL[01]0|L29|TL10)'
|
4450
5049
|
model: 'Honor Play'
|
4451
5050
|
- regex: 'EDI-AL10'
|
4452
5051
|
model: 'Honor Note 8'
|
@@ -4454,7 +5053,7 @@ Huawei:
|
|
4454
5053
|
model: 'Honor Note 10'
|
4455
5054
|
- regex: 'GRA-(?:L09|UL00)'
|
4456
5055
|
model: 'P8'
|
4457
|
-
- regex: 'ALE-L(?:02|21|23)|ALE-UL00'
|
5056
|
+
- regex: 'ALE-L(?:02|21|23)|ALE-UL00|ALE-TL00'
|
4458
5057
|
model: 'P8 Lite (2015)'
|
4459
5058
|
- regex: 'PRA-L(?:A1|X2|X1|X3)|hi6210sft'
|
4460
5059
|
model: 'P8 Lite (2017)'
|
@@ -4466,13 +5065,13 @@ Huawei:
|
|
4466
5065
|
model: 'Nova 2'
|
4467
5066
|
- regex: 'HWI-[AT]L00'
|
4468
5067
|
model: 'Nova 2S'
|
4469
|
-
- regex: 'BAC-L01'
|
5068
|
+
- regex: 'BAC-(?:L01|TL00)'
|
4470
5069
|
model: 'Nova 2 Plus'
|
4471
5070
|
- regex: 'BAC-(?:AL00|L2[12])'
|
4472
5071
|
model: 'Nova 2 Plus Dual SIM'
|
4473
5072
|
- regex: 'RNE-L[02]2'
|
4474
5073
|
model: 'Nova 2I'
|
4475
|
-
- regex: 'PAR-(?:
|
5074
|
+
- regex: 'PAR-(?:[AT]L00|LX[19]|TL20)'
|
4476
5075
|
model: 'Nova 3'
|
4477
5076
|
- regex: 'ANE-AL00'
|
4478
5077
|
model: 'Nova 3e'
|
@@ -4480,7 +5079,7 @@ Huawei:
|
|
4480
5079
|
model: 'Nova 3i'
|
4481
5080
|
- regex: 'SEA-AL10'
|
4482
5081
|
model: 'Nova 5 Pro'
|
4483
|
-
- regex: 'VCE-L22'
|
5082
|
+
- regex: 'VCE-(L22|[AT]L00)'
|
4484
5083
|
model: 'Nova 4'
|
4485
5084
|
- regex: 'MAR-AL00'
|
4486
5085
|
model: 'Nova 4e'
|
@@ -4490,7 +5089,7 @@ Huawei:
|
|
4490
5089
|
model: 'Nova Smart'
|
4491
5090
|
- regex: 'RIO-L03'
|
4492
5091
|
model: 'GX8'
|
4493
|
-
- regex: 'EVA-(?:
|
5092
|
+
- regex: 'EVA-(?:AL[10]0|L[012]9|[TCD]L00)'
|
4494
5093
|
model: 'P9'
|
4495
5094
|
- regex: 'VNS-L(?:[23]1|62)'
|
4496
5095
|
model: 'P9 Lite'
|
@@ -4508,15 +5107,15 @@ Huawei:
|
|
4508
5107
|
model: 'P10 Selfie'
|
4509
5108
|
- regex: 'VKY-(?:AL00|L09|L29)'
|
4510
5109
|
model: 'P10 Plus'
|
4511
|
-
- regex: 'EML-(?:
|
5110
|
+
- regex: 'EML-(?:[TA]L00|L[02]9)'
|
4512
5111
|
model: 'P20'
|
4513
|
-
- regex: 'ANE-LX[123]'
|
5112
|
+
- regex: 'ANE-(?:LX[123]|TL00)'
|
4514
5113
|
model: 'P20 Lite'
|
4515
|
-
- regex: 'CLT-(?:AL0[01]|L(?:04|[02]9))'
|
5114
|
+
- regex: 'CLT-(?:AL0[01]|TL00|L(?:04|[02]9))'
|
4516
5115
|
model: 'P20 Pro'
|
4517
5116
|
- regex: 'ELE-L(?:04|09|29)|ELE-AL00'
|
4518
5117
|
model: 'P30'
|
4519
|
-
- regex: 'VOG-L(?:04|09|29)'
|
5118
|
+
- regex: 'VOG-L(?:04|09|29)|VOG-TL00'
|
4520
5119
|
model: 'P30 Pro'
|
4521
5120
|
- regex: 'MAR-LX(1M|2)'
|
4522
5121
|
model: 'P30 Lite'
|
@@ -4542,13 +5141,13 @@ Huawei:
|
|
4542
5141
|
model: 'Y5II'
|
4543
5142
|
- regex: 'MYA-(?:L(?:02|03|2[23])|U29)'
|
4544
5143
|
model: 'Y5 (2017)'
|
4545
|
-
- regex: 'AMN-LX[
|
5144
|
+
- regex: 'AMN-LX[129]'
|
4546
5145
|
model: 'Y5 (2019)'
|
4547
5146
|
- regex: 'CRO-L[02]3'
|
4548
5147
|
model: 'Y5 Lite (2017)'
|
4549
5148
|
- regex: 'CAG-L[02]3'
|
4550
5149
|
model: 'Y5 Lite (2018)'
|
4551
|
-
- regex: 'DRA-LX2'
|
5150
|
+
- regex: 'DRA-(?:LX2|AL00)'
|
4552
5151
|
model: 'Y5 Prime (2018)'
|
4553
5152
|
- regex: 'DRA-LX5'
|
4554
5153
|
model: 'Y5 lite'
|
@@ -4564,7 +5163,7 @@ Huawei:
|
|
4564
5163
|
model: 'Y6II'
|
4565
5164
|
- regex: 'ATU-L(?:11|21|22|X3)'
|
4566
5165
|
model: 'Y6 (2018)'
|
4567
|
-
- regex: 'MRD-
|
5166
|
+
- regex: 'MRD-L(?:X1[F]?|X3)'
|
4568
5167
|
model: 'Y6 (2019)'
|
4569
5168
|
- regex: 'TIT-(?:AL00|L01)'
|
4570
5169
|
model: 'Y6 Pro'
|
@@ -4576,17 +5175,19 @@ Huawei:
|
|
4576
5175
|
model: 'Y7 (2017)'
|
4577
5176
|
- regex: 'LDN-L(?:01|X3)'
|
4578
5177
|
model: 'Y7 (2018)'
|
4579
|
-
- regex: 'DUB-LX[13]'
|
5178
|
+
- regex: 'DUB-(?:LX[13]|TL00)'
|
4580
5179
|
model: 'Y7 (2019)'
|
4581
|
-
- regex: '
|
5180
|
+
- regex: 'DUB-AL20'
|
5181
|
+
model: 'Y7 Pro (2019)'
|
5182
|
+
- regex: 'LDN-(?:AL00|L21)|TRT-TL10'
|
4582
5183
|
model: 'Y7 Prime'
|
4583
5184
|
- regex: 'LDN-(?:LX2|TL10)|TRT-(?:L21A|L53)'
|
4584
5185
|
model: 'Y7 Prime (2018)'
|
4585
|
-
- regex: 'DUB-LX2'
|
5186
|
+
- regex: 'DUB-(?:LX2|AL00)'
|
4586
5187
|
model: 'Y7 Pro (2019)'
|
4587
|
-
- regex: 'FLA-LX[123]'
|
5188
|
+
- regex: 'FLA-(LX[123]|AL20|TL10)'
|
4588
5189
|
model: 'Y9 (2018)'
|
4589
|
-
- regex: 'JKM-(?:
|
5190
|
+
- regex: 'JKM-(?:[TA]L00|LX[123])'
|
4590
5191
|
model: 'Y9 (2019)'
|
4591
5192
|
- regex: 'STK-(L2[12]|LX3)'
|
4592
5193
|
model: 'Y9 Prime (2019)'
|
@@ -4598,17 +5199,17 @@ Huawei:
|
|
4598
5199
|
model: 'Y635 Dual SIM'
|
4599
5200
|
- regex: 'NXT-(?:AL10|L29)'
|
4600
5201
|
model: 'Mate 8'
|
4601
|
-
- regex: 'MHA-(?:L[02]9|
|
5202
|
+
- regex: 'MHA-(?:L[02]9|[AT]L00)'
|
4602
5203
|
model: 'Mate 9'
|
4603
5204
|
- regex: 'BLL-L23'
|
4604
5205
|
model: 'Mate 9 Lite'
|
4605
5206
|
- regex: 'LON-(?:AL00|L29)'
|
4606
5207
|
model: 'Mate 9 Pro'
|
4607
|
-
- regex: 'ALP-(?:
|
5208
|
+
- regex: 'ALP-(?:[TA]L00|L[02]9)'
|
4608
5209
|
model: 'Mate 10'
|
4609
5210
|
- regex: 'RNE-(?:AL00|L(?:01|03|21|23))'
|
4610
5211
|
model: 'Mate 10 Lite'
|
4611
|
-
- regex: 'BLA-(?:A09|L[02]9|
|
5212
|
+
- regex: 'BLA-(?:A09|L[02]9|[TA]L00)'
|
4612
5213
|
model: 'Mate 10 Pro'
|
4613
5214
|
- regex: 'HMA-(?:[AT]L00|L[02]9)'
|
4614
5215
|
model: 'Mate 20'
|
@@ -4616,11 +5217,11 @@ Huawei:
|
|
4616
5217
|
model: 'P30 Pro'
|
4617
5218
|
- regex: 'LYA-AL00P'
|
4618
5219
|
model: 'Mate 20 RS'
|
4619
|
-
- regex: 'LYA-(?:AL[01]0|L[02]9)'
|
5220
|
+
- regex: 'LYA-(?:AL[01]0|L[02]9|L0C|TL00)'
|
4620
5221
|
model: 'Mate 20 Pro'
|
4621
5222
|
- regex: 'SNE-(?:AL00|LX[0-3])'
|
4622
5223
|
model: 'Mate 20 Lite'
|
4623
|
-
- regex: 'EVR-(?:
|
5224
|
+
- regex: 'EVR-(?:[TA]L00|L29)'
|
4624
5225
|
model: 'Mate 20 X'
|
4625
5226
|
- regex: 'CRR-(?:L09|UL00)'
|
4626
5227
|
model: 'Mate S'
|
@@ -4642,25 +5243,31 @@ Huawei:
|
|
4642
5243
|
- regex: 'CMR-(?:AL[01]9|W09)'
|
4643
5244
|
device: 'tablet'
|
4644
5245
|
model: 'MediaPad M5 10.8'
|
4645
|
-
- regex: '
|
5246
|
+
- regex: 'GEM-70[1-3]L'
|
5247
|
+
device: 'tablet'
|
5248
|
+
model: 'MediaPad X2'
|
5249
|
+
- regex: 'JDN2-(:?L09|AL00)|BAH2-(?:L09|W19)'
|
4646
5250
|
device: 'tablet'
|
4647
5251
|
model: 'MediaPad M5 lite'
|
4648
5252
|
- regex: 'SHT-(?:AL|W)09'
|
4649
5253
|
device: 'tablet'
|
4650
5254
|
model: 'MediaPad M5 8.4'
|
5255
|
+
- regex: 'VRD-(AL|W)09'
|
5256
|
+
device: 'tablet'
|
5257
|
+
model: 'MediaPad M6 8.4'
|
4651
5258
|
- regex: 'BTV-W09'
|
4652
5259
|
device: 'tablet'
|
4653
5260
|
model: 'MediaPad M3 8'
|
4654
|
-
- regex: 'BAH-W09|CPN-(?:L|W)09'
|
5261
|
+
- regex: 'BAH-W09|CPN-(?:L|W)09|CPN-AL00'
|
4655
5262
|
device: 'tablet'
|
4656
5263
|
model: 'MediaPad M3 Lite'
|
4657
|
-
- regex: 'BAH-L09'
|
5264
|
+
- regex: 'BAH-(?:L09|AL00)'
|
4658
5265
|
device: 'tablet'
|
4659
5266
|
model: 'MediaPad M3 Lite 10'
|
4660
5267
|
- regex: 'BTV-DL09'
|
4661
5268
|
device: 'tablet'
|
4662
5269
|
model: 'MediaPad M3'
|
4663
|
-
- regex: 'AGS2-(?:
|
5270
|
+
- regex: 'AGS2-(?:[LW]09|L03)'
|
4664
5271
|
device: 'tablet'
|
4665
5272
|
model: 'MediaPad T5 10'
|
4666
5273
|
- regex: 'AGS-(?:L0[39]|W09)'
|
@@ -4678,6 +5285,9 @@ Huawei:
|
|
4678
5285
|
- regex: '(?:BGO-DL09|PLE-70[13]L)'
|
4679
5286
|
device: 'tablet'
|
4680
5287
|
model: 'MediaPad T2 7.0 Pro'
|
5288
|
+
- regex: 'JDN-L01'
|
5289
|
+
device: 'tablet'
|
5290
|
+
model: 'MediaPad T2 8.0 Pro'
|
4681
5291
|
- regex: 'FDR-A01(?:L|w)'
|
4682
5292
|
device: 'tablet'
|
4683
5293
|
model: 'MediaPad T2 10.0 Pro'
|
@@ -4773,10 +5383,10 @@ iRola:
|
|
4773
5383
|
|
4774
5384
|
# Irbis
|
4775
5385
|
Irbis:
|
4776
|
-
regex: 'TZ(753|85[47]|86[45]|88[124]|89[12]|49)|T(?:Zone|Zart)|(SP(?:0[56]|2[01]|4[1-36]|45[45]|50))[;)\ ]'
|
5386
|
+
regex: 'TZ(150|165|17[5-8]|77[17]|753|794|8[34]1|85[47]|86[45]|88[124]|89[12]|49|716|772)|T(?:Zone|Zart)|(SP(?:0[56]|2[01]|4[1-36]|45[45]|50))[;)\ ]'
|
4777
5387
|
device: 'tablet'
|
4778
5388
|
models:
|
4779
|
-
- regex: '(TZ(?:753|85[47]|86[45]|88[124]|89[12]|49)|T(?:Zone|Zart))[;)\ ]'
|
5389
|
+
- regex: '(TZ(?:150|165|17[5-8]|77[17]|753|794|8[34]1|85[47]|86[45]|88[124]|89[12]|49|716|772)|T(?:Zone|Zart))[;)\ ]'
|
4780
5390
|
model: '$1'
|
4781
5391
|
- regex: '(SP(?:0[56]|2[01]|4[1-36]|45[45]|50))[;)\ ]'
|
4782
5392
|
device: 'smartphone'
|
@@ -4794,11 +5404,13 @@ iBerry:
|
|
4794
5404
|
|
4795
5405
|
# iHunt
|
4796
5406
|
iHunt:
|
4797
|
-
regex: 'iHunt|One_ Love_|TITAN_P11000_PRO|Like_(3|4U|3_Pro)|X300 Elite'
|
5407
|
+
regex: 'iHunt|One_ Love_|TITAN_P11000_PRO|Like_(3|4U|3_Pro)|X300 Elite|S10_Tank_2019'
|
4798
5408
|
device: 'smartphone'
|
4799
5409
|
models:
|
4800
5410
|
- regex: 'iHunt_Like'
|
4801
5411
|
model: 'Like'
|
5412
|
+
- regex: 'S10_Tank_2019'
|
5413
|
+
model: 'S10 Tank 2019'
|
4802
5414
|
- regex: 'One_ Love_'
|
4803
5415
|
model: 'One Love'
|
4804
5416
|
- regex: 'TITAN_P11000_PRO'
|
@@ -4924,6 +5536,12 @@ LYF:
|
|
4924
5536
|
- regex: 'LYF/([^/]+)/'
|
4925
5537
|
model: '$1'
|
4926
5538
|
|
5539
|
+
# Lumus
|
5540
|
+
Lumus:
|
5541
|
+
regex: 'NEOSR620[;)/ ]'
|
5542
|
+
device: 'smartphone'
|
5543
|
+
model: 'Neo SR620'
|
5544
|
+
|
4927
5545
|
# M4tel
|
4928
5546
|
M4tel:
|
4929
5547
|
regex: 'M4 SS[0-9]{4}(?:-R)?|M4_B[23]'
|
@@ -4982,6 +5600,12 @@ IMO Mobile:
|
|
4982
5600
|
- regex: 'IMO Q2'
|
4983
5601
|
model: 'Q2'
|
4984
5602
|
|
5603
|
+
# iLA
|
5604
|
+
iLA:
|
5605
|
+
regex: 'iLA[-_ ](Silk|X)[);/ ]'
|
5606
|
+
device: 'smartphone'
|
5607
|
+
model: '$1'
|
5608
|
+
|
4985
5609
|
# iNew
|
4986
5610
|
iNew:
|
4987
5611
|
regex: 'iNew|(?:V7A|V3 Plus|V3-?E|V3C)(?: Build|[;/\)])'
|
@@ -5130,11 +5754,17 @@ Infinix:
|
|
5130
5754
|
|
5131
5755
|
# InFocus
|
5132
5756
|
InFocus:
|
5133
|
-
regex: '(
|
5757
|
+
regex: 'IF(9001|9007|9021|9035) Build'
|
5134
5758
|
device: 'smartphone'
|
5135
5759
|
models:
|
5136
|
-
- regex: '
|
5137
|
-
model: '
|
5760
|
+
- regex: 'IF9001'
|
5761
|
+
model: 'Turbo 5'
|
5762
|
+
- regex: 'IF9007'
|
5763
|
+
model: 'A3'
|
5764
|
+
- regex: 'IF9021'
|
5765
|
+
model: 'Turbo 5 Plus'
|
5766
|
+
- regex: 'IF9035'
|
5767
|
+
model: 'A2'
|
5138
5768
|
|
5139
5769
|
# InnJoo
|
5140
5770
|
InnJoo:
|
@@ -5156,6 +5786,24 @@ Innostream:
|
|
5156
5786
|
device: 'feature phone'
|
5157
5787
|
model: 'INNO$1'
|
5158
5788
|
|
5789
|
+
# Insignia
|
5790
|
+
Insignia:
|
5791
|
+
regex: 'NS-(P11A8100|P10A8100|P10A6100|P16AT08|P16AT10|P16AT785HD|P08A7100|P10A7100)[);/ ]'
|
5792
|
+
device: 'tablet'
|
5793
|
+
models:
|
5794
|
+
- regex: 'NS-P11A8100'
|
5795
|
+
model: '11.6"'
|
5796
|
+
- regex: 'NS-(P10A6100|P16AT10)'
|
5797
|
+
model: 'Flex 10.1"'
|
5798
|
+
- regex: 'NS-P16AT08'
|
5799
|
+
model: 'Flex 8"'
|
5800
|
+
- regex: 'NS-P08A7100'
|
5801
|
+
model: '8"'
|
5802
|
+
- regex: 'NS-(P10A8100|P10A7100)'
|
5803
|
+
model: '10.1"'
|
5804
|
+
- regex: 'NS-P16AT785HD'
|
5805
|
+
model: 'Flex Elite 7.85"'
|
5806
|
+
|
5159
5807
|
# Inq
|
5160
5808
|
INQ:
|
5161
5809
|
regex: 'INQ[/ ]'
|
@@ -5169,11 +5817,13 @@ INQ:
|
|
5169
5817
|
|
5170
5818
|
# Intex
|
5171
5819
|
Intex:
|
5172
|
-
regex: 'Intex|(Aqua|Cloud[ _][XY][0-9]{1})'
|
5820
|
+
regex: 'Intex|(Aqua|Cloud[ _][XY][0-9]{1}|Cloud (?:Fame|Glory) 4G)'
|
5173
5821
|
device: 'smartphone'
|
5174
5822
|
models:
|
5175
5823
|
- regex: 'Intex[ _]([^/;]*)[ _]Build'
|
5176
5824
|
model: '$1'
|
5825
|
+
- regex: '(Cloud (?:Fame|Glory) 4G)'
|
5826
|
+
model: '$1'
|
5177
5827
|
- regex: '(Aqua|Cloud)[ _\.]([^/;\)]+)(?:[ _]Build|(?<!Build)/|\))'
|
5178
5828
|
model: '$1 $2'
|
5179
5829
|
- regex: 'Intex[ _]([a-z0-9_+\-]+)'
|
@@ -5277,11 +5927,13 @@ iTel:
|
|
5277
5927
|
|
5278
5928
|
# JAY-Tech
|
5279
5929
|
JAY-Tech:
|
5280
|
-
regex: 'TPC-[A-Z0-9]+'
|
5930
|
+
regex: 'TPC-[A-Z0-9]+|TPCY-TX[TE][^);/ ]+'
|
5281
5931
|
device: 'tablet'
|
5282
5932
|
models:
|
5283
5933
|
- regex: 'TPC-([A-Z0-9]+)'
|
5284
5934
|
model: 'Tablet PC $1'
|
5935
|
+
- regex: '(TPCY-TX[TE][^);/ ]+)'
|
5936
|
+
model: '$1'
|
5285
5937
|
|
5286
5938
|
# Jiayu
|
5287
5939
|
Jiayu:
|
@@ -5325,6 +5977,12 @@ Kalley:
|
|
5325
5977
|
- regex: 'ELEMENT Q'
|
5326
5978
|
model: 'Element Q'
|
5327
5979
|
|
5980
|
+
# Kaan
|
5981
|
+
Kaan:
|
5982
|
+
regex: 'KAAN[ _](N[12]|A1)[);/ ]'
|
5983
|
+
device: 'smartphone'
|
5984
|
+
model: '$1'
|
5985
|
+
|
5328
5986
|
# Kazam
|
5329
5987
|
Kazam:
|
5330
5988
|
regex: 'Kazam ([^;/]+) Build|Trooper_X[0-9][0-9][);/ ]|Tornado 348'
|
@@ -5493,13 +6151,18 @@ KDDI:
|
|
5493
6151
|
|
5494
6152
|
# Kodak
|
5495
6153
|
Kodak:
|
5496
|
-
regex: 'KODAK'
|
6154
|
+
regex: 'KODAK|IM5[);/ ]'
|
5497
6155
|
device: 'smartphone'
|
5498
6156
|
models:
|
6157
|
+
- regex: 'IM5'
|
6158
|
+
model: 'IM5'
|
5499
6159
|
- regex: 'KODAK_SMARTWAY_((M|T)1)'
|
5500
6160
|
model: 'Smartway $1'
|
5501
6161
|
- regex: 'SMARTWAY X1'
|
5502
6162
|
model: 'Smartway X1'
|
6163
|
+
- regex: 'Tablet (7|10)'
|
6164
|
+
device: 'tablet'
|
6165
|
+
model: 'Tablet $1'
|
5503
6166
|
|
5504
6167
|
# KOPO
|
5505
6168
|
KOPO:
|
@@ -5537,7 +6200,7 @@ K-Touch:
|
|
5537
6200
|
|
5538
6201
|
# kyocera
|
5539
6202
|
Kyocera:
|
5540
|
-
regex: 'Kyocera|KWC-|QC-|C5120|C5170|C5155|C5215|C6730|C6750|C6522N?|C6530N|C6740|C6743|
|
6203
|
+
regex: 'Kyocera|KWC-|QC-|C5120|C5170|C5155|C5215|C6730|C6750|C6522N?|C6530N|C6740|C6743|E6[89]10|KYL21|KYY23|S2151|KC-S701'
|
5541
6204
|
device: 'smartphone'
|
5542
6205
|
models:
|
5543
6206
|
# explicit smartphone models
|
@@ -5563,12 +6226,16 @@ Kyocera:
|
|
5563
6226
|
model: 'Hydro Reach'
|
5564
6227
|
- regex: 'E6810'
|
5565
6228
|
model: 'DuraForce Pro'
|
6229
|
+
- regex: 'E6910'
|
6230
|
+
model: 'DuraForce Pro 2'
|
5566
6231
|
- regex: 'KC-S701'
|
5567
6232
|
model: 'Torque'
|
5568
6233
|
- regex: 'KYL21'
|
5569
6234
|
model: 'Digno S'
|
5570
6235
|
- regex: 'KYY23'
|
5571
6236
|
model: 'Urbano L03'
|
6237
|
+
- regex: '(?:Kyocera-)?E6790'
|
6238
|
+
model: 'DuraForce XD'
|
5572
6239
|
|
5573
6240
|
# explicit feature phone models
|
5574
6241
|
- regex: 'S2151'
|
@@ -5602,6 +6269,14 @@ LAIQ:
|
|
5602
6269
|
- regex: '(Glam|New York)'
|
5603
6270
|
model: '$1'
|
5604
6271
|
|
6272
|
+
# AIS
|
6273
|
+
AIS:
|
6274
|
+
regex: 'iris708'
|
6275
|
+
device: 'smartphone'
|
6276
|
+
models:
|
6277
|
+
- regex: 'iris708'
|
6278
|
+
model: 'LAVA PRO 4.5'
|
6279
|
+
|
5605
6280
|
# Lava
|
5606
6281
|
Lava:
|
5607
6282
|
regex: 'Lava[ _]|iris[ _]?([^/;]+)(?:\)| Build)|A(?:67|76) Build|X1 Selfie Build|X41 Plus Build|Flair Z1|PixelV1|Z61_2GB'
|
@@ -5656,7 +6331,7 @@ Lanix:
|
|
5656
6331
|
device: 'tablet'
|
5657
6332
|
- regex: 'X120C'
|
5658
6333
|
model: 'Ilium X120C'
|
5659
|
-
- regex: 'Ilium[ _](Alpha 3|L(?:200|6[12]0|9[125]0|1[0124]00|1050|1120)|LT5[012]0|M[
|
6334
|
+
- regex: 'Ilium[ _](Alpha 3|L(?:200|6[12]0|9[125]0|1[0124]00|1050|1120)|LT5[012]0|M[1379]|S(?:106|520|6[27]0)|X(?:1[12]0|2[0126]0|5[12]0|500B|710))'
|
5660
6335
|
model: 'Ilium $1'
|
5661
6336
|
- regex: 'ILIUM[ _]([^;/]+) Build'
|
5662
6337
|
model: 'Ilium $1'
|
@@ -5784,6 +6459,19 @@ Leotec:
|
|
5784
6459
|
- regex: 'LESPH5014'
|
5785
6460
|
model: 'Krypton K150'
|
5786
6461
|
|
6462
|
+
# Lephone
|
6463
|
+
Lephone:
|
6464
|
+
regex: 'lephone[ _]'
|
6465
|
+
device: 'smartphone'
|
6466
|
+
models:
|
6467
|
+
- regex: 'lephone[ _](K7|K10)'
|
6468
|
+
device: 'feature phone'
|
6469
|
+
model: '$1'
|
6470
|
+
- regex: 'lephone[ _](W(1[0125]|[279])|T2)[/;) ]'
|
6471
|
+
model: '$1'
|
6472
|
+
- regex: 'lephone_W7_plus'
|
6473
|
+
model: 'W7 Plus'
|
6474
|
+
|
5787
6475
|
# lenco
|
5788
6476
|
Lenco:
|
5789
6477
|
regex: 'Lenco ([^/;]*) Build'
|
@@ -5877,6 +6565,12 @@ Lenovo:
|
|
5877
6565
|
- regex: 'TB-X304F'
|
5878
6566
|
model: 'TAB 4 10'
|
5879
6567
|
device: 'tablet'
|
6568
|
+
- regex: 'Lenovo TB-X505F'
|
6569
|
+
model: 'M10'
|
6570
|
+
device: 'tablet'
|
6571
|
+
- regex: 'Lenovo TB-X104[FXL]'
|
6572
|
+
model: 'E10'
|
6573
|
+
device: 'tablet'
|
5880
6574
|
- regex: 'Tab2A([0-9]-[0-9]{2}[a-z]?)'
|
5881
6575
|
model: 'TAB 2 A$1'
|
5882
6576
|
device: 'tablet'
|
@@ -5908,6 +6602,8 @@ Lenovo:
|
|
5908
6602
|
model: 'K3 Note'
|
5909
6603
|
- regex: 'A7010a48 Build'
|
5910
6604
|
model: 'K4 Note'
|
6605
|
+
- regex: 'A7010a48(?: Build|\))'
|
6606
|
+
model: 'K4 Vibe'
|
5911
6607
|
- regex: 'A7020a4[08](?: Build|\))'
|
5912
6608
|
model: 'K5 Note'
|
5913
6609
|
- regex: '(?:Lenovo-)?A6020(?:a40|l36)(?: Build|\))'
|
@@ -6026,7 +6722,7 @@ Lexibook:
|
|
6026
6722
|
|
6027
6723
|
# LG
|
6028
6724
|
LG:
|
6029
|
-
regex: 'LG|portalmmm/2\.0 (?:KE|KG|KP|L3)|(?:VX[0-9]+|L-0[12]D|L-07C|P713|LM-(V350
|
6725
|
+
regex: 'LG|portalmmm/2\.0 (?:KE|KG|KP|L3)|(?:VX[0-9]+|L-0[12]D|L-07C|P713|LM-(Q910|V350[N]?|V409N|X510WM|X525|Q815[SL]|X410([KL]|UM|PM)|X420N|X510[KLS]|X415[KLS]|Q850|Q925L|Q725[KL]|Q710(?:FGN|\(FGN\)|\.FGN?)?|X2[12]0(?:APM|\(G\)|CM|G)?|G710(N|VM)?|V405|V500N|G820(N|QM[0127]|UMB)?|(X410|Q610)(?:\(FGN?\)|\.FN|\.F(?:GN?)?)))[);/ ]|NetCast|RS987|RS500|VS(?:50[01]|835|98[78]|99[56]|(410|415|425|500)PP)|Nexsus 5|LML(414D|211B|713D|212V)L|LM-X(625N|210K|212\(G\)|410S)|VK810 4G|VK815'
|
6030
6726
|
device: 'smartphone'
|
6031
6727
|
models:
|
6032
6728
|
- regex: 'LG-D325'
|
@@ -6045,7 +6741,7 @@ LG:
|
|
6045
6741
|
model: 'G4 Stylus'
|
6046
6742
|
- regex: 'LG-H735'
|
6047
6743
|
model: 'G4 Beat'
|
6048
|
-
- regex: 'LG-H8(?:20|30|5[08]|60)'
|
6744
|
+
- regex: 'LG-H8(?:20|30|5[08]|60)|VS987'
|
6049
6745
|
model: 'G5'
|
6050
6746
|
- regex: 'LG-H84[05]'
|
6051
6747
|
model: 'G5 SE'
|
@@ -6053,6 +6749,8 @@ LG:
|
|
6053
6749
|
model: 'G6'
|
6054
6750
|
- regex: 'LM-Q850'
|
6055
6751
|
model: 'G7 Fit'
|
6752
|
+
- regex: 'LM-Q910'
|
6753
|
+
model: 'G7 One'
|
6056
6754
|
- regex: 'LM-G820(N|QM[0127]|UMB)?'
|
6057
6755
|
model: 'G8'
|
6058
6756
|
- regex: 'VS501'
|
@@ -6087,21 +6785,27 @@ LG:
|
|
6087
6785
|
model: 'Q8+'
|
6088
6786
|
- regex: 'LM-Q925L'
|
6089
6787
|
model: 'Q9'
|
6090
|
-
- regex: '
|
6788
|
+
- regex: 'VS835'
|
6789
|
+
model: 'Stylo 2 V'
|
6790
|
+
- regex: 'LM-Q710|LML713DL'
|
6091
6791
|
model: 'Stylo 4'
|
6092
|
-
- regex: 'LM-
|
6792
|
+
- regex: 'LM-G710(N|VM)?'
|
6093
6793
|
model: 'G7 ThinQ'
|
6094
6794
|
- regex: 'LM-X210CM'
|
6095
6795
|
model: 'Fortune 2'
|
6096
6796
|
- regex: 'LM-X410\.F[);/ ]'
|
6097
6797
|
model: 'Premier Pro'
|
6798
|
+
- regex: 'LML414DL[);/ ]'
|
6799
|
+
model: 'Premier Pro LTE'
|
6098
6800
|
- regex: 'LM-X525'
|
6099
6801
|
model: 'Q60'
|
6802
|
+
- regex: 'LM-X210K'
|
6803
|
+
model: 'X2'
|
6100
6804
|
- regex: 'LM-X510WM'
|
6101
6805
|
model: 'X Power 3'
|
6102
|
-
- regex: 'LM-
|
6806
|
+
- regex: 'LM-X(?:41[05]K|410S)'
|
6103
6807
|
model: 'X4'
|
6104
|
-
- regex: 'LM-(
|
6808
|
+
- regex: 'LM-X(415[LS]|410L)'
|
6105
6809
|
model: 'X4+'
|
6106
6810
|
- regex: 'LM-X410\.FN'
|
6107
6811
|
model: 'K11'
|
@@ -6109,8 +6813,8 @@ LG:
|
|
6109
6813
|
model: 'K30'
|
6110
6814
|
- regex: 'LM-X410'
|
6111
6815
|
model: 'LM-X410'
|
6112
|
-
- regex: 'LM-
|
6113
|
-
model: '
|
6816
|
+
- regex: 'LM-X420N'
|
6817
|
+
model: 'X4 (2019)'
|
6114
6818
|
- regex: 'LM-X510[KLS]'
|
6115
6819
|
model: 'X5'
|
6116
6820
|
- regex: 'LM-X625N1'
|
@@ -6123,10 +6827,14 @@ LG:
|
|
6123
6827
|
model: 'V40 ThinQ'
|
6124
6828
|
- regex: 'LM-V500N'
|
6125
6829
|
model: 'V50'
|
6126
|
-
- regex: '(?:LG-)?(?:RS987|H901)'
|
6830
|
+
- regex: '(?:LG-)?(?:RS987|H901|H96[0128]|VS990)'
|
6127
6831
|
model: 'V10'
|
6128
6832
|
- regex: '(?:LG-)?RS500'
|
6129
6833
|
model: 'K8 4G'
|
6834
|
+
- regex: '(?:LG-)?VS500'
|
6835
|
+
model: 'K8 V'
|
6836
|
+
- regex: 'LM-X212\(G\)'
|
6837
|
+
model: 'K8 (2018)'
|
6130
6838
|
- regex: '(?:LG-)?H91[058]'
|
6131
6839
|
model: 'V20'
|
6132
6840
|
- regex: '(?:LG-)?H990(?:DS|N|T)?'
|
@@ -6141,6 +6849,8 @@ LG:
|
|
6141
6849
|
model: 'V30'
|
6142
6850
|
- regex: '(?:LG-)?VS410PP'
|
6143
6851
|
model: 'Optimus Zone'
|
6852
|
+
- regex: 'LM-V350[N]?'
|
6853
|
+
model: 'V35'
|
6144
6854
|
- regex: '(?:LG-)?VS415PP'
|
6145
6855
|
model: 'Optimus Zone 2'
|
6146
6856
|
- regex: '(?:LG-)?VS425PP'
|
@@ -6181,6 +6891,8 @@ LG:
|
|
6181
6891
|
model: 'Optimus 4X HD'
|
6182
6892
|
- regex: '(?:LG-)?H340n?'
|
6183
6893
|
model: 'Leon'
|
6894
|
+
- regex: '(?:LG-)?H422'
|
6895
|
+
model: 'Spirit'
|
6184
6896
|
- regex: '(?:LG)?C660'
|
6185
6897
|
model: 'Optimus Pro'
|
6186
6898
|
- regex: 'LML211BL|LML212VL'
|
@@ -6201,6 +6913,12 @@ LG:
|
|
6201
6913
|
- regex: 'LG-V521'
|
6202
6914
|
model: 'G Pad X 8.0'
|
6203
6915
|
device: 'tablet'
|
6916
|
+
- regex: 'VK810'
|
6917
|
+
model: 'G Pad 8.3 LTE'
|
6918
|
+
device: 'tablet'
|
6919
|
+
- regex: 'VK815'
|
6920
|
+
model: 'G Pad X 8.3'
|
6921
|
+
device: 'tablet'
|
6204
6922
|
|
6205
6923
|
- regex: 'webOS.TV'
|
6206
6924
|
device: 'tv'
|
@@ -6393,9 +7111,38 @@ Majestic:
|
|
6393
7111
|
|
6394
7112
|
# Manta Multimedia
|
6395
7113
|
Manta Multimedia:
|
6396
|
-
regex: '((?<!/)MID713|MID(?:06[SN]|08[S]?|12|13|14|15|701|702|703|704|705(?:DC)?|706[AS]?|707|708|709|711|712|714|717|781|801|802|901|1001|1002|1003|1004(?: 3G)?|1005|1009|1010|7802|9701|9702))[);/ ]'
|
6397
|
-
device: '
|
6398
|
-
|
7114
|
+
regex: 'MSP950(1[45]|2[01])|MSP96017|((?<!/)MID713|MID(?:06[SN]|08[S]?|12|13|14|15|701|702|703|704|705(?:DC)?|706[AS]?|707|708|709|711|712|714|717|781|801|802|901|1001|1002|1003|1004(?: 3G)?|1005|1009|1010|7802|9701|9702))[);/ ]'
|
7115
|
+
device: 'smartphone'
|
7116
|
+
models:
|
7117
|
+
- regex: '((?<!/)MID713|MID(?:06[SN]|08[S]?|12|13|14|15|701|702|703|704|705(?:DC)?|706[AS]?|707|708|709|711|712|714|717|781|801|802|901|1001|1002|1003|1004(?: 3G)?|1005|1009|1010|7802|9701|9702))[);/ ]'
|
7118
|
+
device: 'tablet'
|
7119
|
+
model: '$1'
|
7120
|
+
- regex: 'MSP95014'
|
7121
|
+
model: 'Titano 3'
|
7122
|
+
- regex: 'MSP95015'
|
7123
|
+
model: 'Mezo 2'
|
7124
|
+
- regex: 'MSP95020'
|
7125
|
+
model: 'Rocky 2'
|
7126
|
+
- regex: 'MSP95021'
|
7127
|
+
model: 'Rocky 3 Pro'
|
7128
|
+
- regex: 'MSP96017'
|
7129
|
+
model: 'Forto 2'
|
7130
|
+
|
7131
|
+
# Masstel
|
7132
|
+
Masstel:
|
7133
|
+
regex: 'Masstel'
|
7134
|
+
device: 'smartphone'
|
7135
|
+
models:
|
7136
|
+
- regex: 'Masstel[_ ](Juno[_ ]Q3|X9|N4[56]0|N5[2458]0|N536|M05|M1[29]0|M1[125]|M250|M25)[);/ ]'
|
7137
|
+
model: '$1'
|
7138
|
+
- regex: 'Masstel[_ ]\((M18)\)'
|
7139
|
+
model: '$1'
|
7140
|
+
- regex: 'Masstel_Tab7LTE[);/ ]'
|
7141
|
+
model: 'Tab 7 LTE'
|
7142
|
+
device: 'tablet'
|
7143
|
+
- regex: 'Masstel Tab (840|700i)[);/ ]'
|
7144
|
+
model: 'Tab $1'
|
7145
|
+
device: 'tablet'
|
6399
7146
|
|
6400
7147
|
# Maxwest
|
6401
7148
|
Maxwest:
|
@@ -6521,7 +7268,7 @@ Mediacom:
|
|
6521
7268
|
|
6522
7269
|
# Medion
|
6523
7270
|
Medion:
|
6524
|
-
regex: 'Medion|(?:MD_)?LIFETAB|X5001[);/ ]|[SPX]10[0-9]{2}X[);/ ]'
|
7271
|
+
regex: 'Medion|(?:MD_)?LIFETAB|X5001[);/ ]|([SPX]10[0-9]{2}X|E10[45]1X)[);/ ]'
|
6525
7272
|
device: 'smartphone'
|
6526
7273
|
models:
|
6527
7274
|
- regex: '(?:MD_)?LIFETAB_([a-z0-9]+)'
|
@@ -6529,6 +7276,9 @@ Medion:
|
|
6529
7276
|
model: 'Lifetab $1'
|
6530
7277
|
- regex: 'X5001'
|
6531
7278
|
model: 'Life X5001'
|
7279
|
+
- regex: '(E10[45]1X)[);/ ]'
|
7280
|
+
device: 'tablet'
|
7281
|
+
model: '$1'
|
6532
7282
|
- regex: '([SPX]10[0-9]{2}X)[);/ ]'
|
6533
7283
|
model: 'Lifetab $1'
|
6534
7284
|
device: 'tablet'
|
@@ -6597,6 +7347,28 @@ Meizu:
|
|
6597
7347
|
- regex: 'MZ-([^/;]+) Build'
|
6598
7348
|
model: '$1'
|
6599
7349
|
|
7350
|
+
# Meitu
|
7351
|
+
Meitu:
|
7352
|
+
regex: '(Meitu[2]?|MP1503|MP1512|MP160[23]|MP170[19])[ ;/)]'
|
7353
|
+
device: 'smartphone'
|
7354
|
+
models:
|
7355
|
+
- regex: 'MP1503[ ;/)]'
|
7356
|
+
model: 'M6'
|
7357
|
+
- regex: 'MP1512[ ;/)]'
|
7358
|
+
model: 'M6s'
|
7359
|
+
- regex: 'MP1602[ ;/)]'
|
7360
|
+
model: 'T8'
|
7361
|
+
- regex: 'MP1701[ ;/)]'
|
7362
|
+
model: 'T8s'
|
7363
|
+
- regex: 'MP1603[ ;/)]'
|
7364
|
+
model: 'M8'
|
7365
|
+
- regex: 'MP1709[ ;/)]'
|
7366
|
+
model: 'M8s'
|
7367
|
+
- regex: 'Meitu2[ ;/)]'
|
7368
|
+
model: '2'
|
7369
|
+
- regex: 'Meitu (Kiss|M4)[ ;/)]'
|
7370
|
+
model: '$1'
|
7371
|
+
|
6600
7372
|
# Memup
|
6601
7373
|
Memup:
|
6602
7374
|
regex: 'SlidePad ?([^;/]*) Build|SPNG?[0-9]{2,4}[a-z]{0,2}[ ;/)]|SP704CE?'
|
@@ -6700,6 +7472,12 @@ Mobiola:
|
|
6700
7472
|
- regex: 'Wave5'
|
6701
7473
|
model: 'Wave 5'
|
6702
7474
|
|
7475
|
+
# Mobicel
|
7476
|
+
Mobicel:
|
7477
|
+
regex: 'Mobicel_(R1)'
|
7478
|
+
device: 'smartphone'
|
7479
|
+
model: '$1'
|
7480
|
+
|
6703
7481
|
# Mobiistar
|
6704
7482
|
Mobiistar:
|
6705
7483
|
regex: 'Mobiistar|Zumbo_|PRIME X MAX'
|
@@ -6719,6 +7497,8 @@ Mobiistar:
|
|
6719
7497
|
model: 'Lai Zumbo J (2017)'
|
6720
7498
|
- regex: 'Mobiistar_Zumbo_J2'
|
6721
7499
|
model: 'Lai Zumbo J2'
|
7500
|
+
- regex: 'Mobiistar[_ ]Zumbo[_ ]S2'
|
7501
|
+
model: 'Zumbo S2'
|
6722
7502
|
- regex: 'mobiistar ZUMBO Power'
|
6723
7503
|
model: 'Zumbo Power'
|
6724
7504
|
- regex: 'mobiistar[ _]LAI[ _]YUNA[ _]([1XCS])'
|
@@ -6783,6 +7563,18 @@ Mobistel:
|
|
6783
7563
|
device: 'smartphone'
|
6784
7564
|
model: '$1'
|
6785
7565
|
|
7566
|
+
# Mecool
|
7567
|
+
Mecool:
|
7568
|
+
regex: '(KM9PRO|BB2 PRO|KII PRO)[);/ ]'
|
7569
|
+
device: 'tv'
|
7570
|
+
models:
|
7571
|
+
- regex: 'KM9PRO'
|
7572
|
+
model: 'KM9 Pro'
|
7573
|
+
- regex: 'BB2 PRO'
|
7574
|
+
model: 'BB2 Pro'
|
7575
|
+
- regex: 'KII PRO'
|
7576
|
+
model: 'KII Pro'
|
7577
|
+
|
6786
7578
|
# Modecom
|
6787
7579
|
Modecom:
|
6788
7580
|
regex: 'Modecom|Free(?:Way )?Tab|xino z[\d]+ x[\d]+'
|
@@ -6813,7 +7605,7 @@ Mofut:
|
|
6813
7605
|
|
6814
7606
|
# motorola
|
6815
7607
|
Motorola:
|
6816
|
-
regex: 'MOT|(?<!AN)DROID ?(?:Build|[a-z0-9]+)|portalmmm/2.0 (?:E378i|L6|L7|v3)|XOOM [^;/]*Build|XT1021|(?:XT|MZ|MB|ME)[0-9]{3,4}[a-z]?(?:\(Defy\)|-0[1-5])?(?: Build|\))'
|
7608
|
+
regex: 'MOT(?!TO)|(?<!AN)DROID ?(?:Build|[a-z0-9]+)|portalmmm/2.0 (?:E378i|L6|L7|v3)|XOOM [^;/]*Build|XT1021|XT180[3-5]|(?:XT|MZ|MB|ME)[0-9]{3,4}[a-z]?(?:\(Defy\)|-0[1-5])?(?: Build|\))'
|
6817
7609
|
device: 'smartphone'
|
6818
7610
|
models:
|
6819
7611
|
# Explicit feature phone models
|
@@ -6898,6 +7690,12 @@ Motorola:
|
|
6898
7690
|
model: 'Droid Turbo'
|
6899
7691
|
- regex: '(?:MOT-|Motorola-)?XT10(?:28|3[1234]|68|69)'
|
6900
7692
|
model: 'Moto G'
|
7693
|
+
- regex: '(?:MOT-|Motorola-)?XT180[3-5]'
|
7694
|
+
model: 'Moto G5s Plus'
|
7695
|
+
- regex: '(?:MOT-|Motorola-)?XT168[57]'
|
7696
|
+
model: 'Moto G5 Plus'
|
7697
|
+
- regex: '(?:MOT-|Motorola-)?XT1670' #XT1671 XT1677
|
7698
|
+
model: 'Moto G5'
|
6901
7699
|
- regex: '(?:MOT-|Motorola-)?XT10(?:49|5[23568]|60|9[23457])'
|
6902
7700
|
model: 'Moto X'
|
6903
7701
|
- regex: '(?:MOT-|Motorola-)?XT1562'
|
@@ -7039,7 +7837,7 @@ Navon:
|
|
7039
7837
|
|
7040
7838
|
# NOA
|
7041
7839
|
NOA:
|
7042
|
-
regex: 'NOA[ _]|HummerLE'
|
7840
|
+
regex: 'NOA[ _]|HummerLE|NextSE'
|
7043
7841
|
device: 'smartphone'
|
7044
7842
|
models:
|
7045
7843
|
- regex: 'NOA[_ ]CORE[_ ]FORTE'
|
@@ -7050,6 +7848,8 @@ NOA:
|
|
7050
7848
|
model: 'Hummer Lite'
|
7051
7849
|
- regex: 'NOA[_ ]MOVEse'
|
7052
7850
|
model: 'Move SE'
|
7851
|
+
- regex: 'NextSE'
|
7852
|
+
model: 'Next SE'
|
7053
7853
|
- regex: 'NOA[_ ]NEXT'
|
7054
7854
|
model: 'Next'
|
7055
7855
|
- regex: 'NOA[_ ]VISION[_ ]H3SE'
|
@@ -7069,6 +7869,11 @@ NOA:
|
|
7069
7869
|
- regex: 'NOA[_ ]([^;)/ ]+)'
|
7070
7870
|
model: '$1'
|
7071
7871
|
|
7872
|
+
Nobby:
|
7873
|
+
regex: 'Nobby[ ]S500[;/) ]'
|
7874
|
+
device: 'smartphone'
|
7875
|
+
model: 'S500'
|
7876
|
+
|
7072
7877
|
# nec
|
7073
7878
|
NEC:
|
7074
7879
|
regex: 'NEC[ _\-]|KGT/2\.0|portalmmm/1\.0 (?:DB|N)|(?:portalmmm|o2imode)/2.0[ ,]N'
|
@@ -7186,9 +7991,12 @@ Noblex:
|
|
7186
7991
|
|
7187
7992
|
# Nomi
|
7188
7993
|
Nomi:
|
7189
|
-
regex: 'Nomi[ _-]'
|
7994
|
+
regex: 'Nomi[ _-]|C101010 Ultra2[;/) ]'
|
7190
7995
|
device: 'smartphone'
|
7191
7996
|
models:
|
7997
|
+
- regex: 'C101010 Ultra2'
|
7998
|
+
model: 'Ultra 2'
|
7999
|
+
device: 'tablet'
|
7192
8000
|
- regex: 'Nomi[ _-]([^;/]+) Build'
|
7193
8001
|
model: '$1'
|
7194
8002
|
- regex: 'Nomi[ _-]([^;/)]+)[;/)]'
|
@@ -7445,19 +8253,23 @@ OnePlus:
|
|
7445
8253
|
|
7446
8254
|
# oppo
|
7447
8255
|
OPPO:
|
7448
|
-
regex: '(?:OB-)?OPPO[ _]?([a-z0-9]+)|N1T|(?:X90[07][0679]|U707T?|X909T?|R(?:10[01]1|2001|201[07]|6007|7005|7007|80[13579]|81[13579]|82[01379]|83[013]|800[067]|8015|810[679]|811[13]|820[057])[KLSTW]?|N520[79]|N5117|A33f|A33fw|A37fw?|PAAM00|PAC[T|M]00|PBAM00)[);/ ]|R7kf|R7plusf|R7Plusm|A1601|CPH[0-9]{4}|PCAM10|PADM00|RMX18(0[1579]|11|3[13]|2[15]|[45]1|45)|CPH19(69|79|23|1[179])|
|
8256
|
+
regex: '(?:OB-)?OPPO[ _]?([a-z0-9]+)|N1T|(?:X90[07][0679]|U707T?|X909T?|R(?:10[01]1|2001|201[07]|6007|7005|7007|80[13579]|81[13579]|82[01379]|83[013]|800[067]|8015|810[679]|811[13]|820[057])[KLSTW]?|N520[79]|N5117|A33f|A33fw|A37fw?|PAAM00|PAC[T|M]00|PBAM00)[);/ ]|R7kf|R7plusf|R7Plusm|A1601|CPH[0-9]{4}|PCAM10|PADM00|PBBT00|PBBM[03]0|RMX18(0[1579]|11|3[13]|2[15]|[45]1|45)|CPH19(69|79|23|1[179])|RMX(1827|194[135]|19[01]1|1971)|PC[CD]M00|PBAT00|PBCM[13]0|PBE[MT]00|PBFM00|PAFM00'
|
7449
8257
|
device: 'smartphone'
|
7450
8258
|
models:
|
7451
8259
|
- regex: '(?:OPPO[ _]?)?U707T?[);/ ]'
|
7452
8260
|
model: 'Find Way S'
|
7453
8261
|
- regex: '(?:OPPO[ _]?)?CPH1979[);/ ]'
|
7454
8262
|
model: 'Reno Z'
|
8263
|
+
- regex: 'CPH1945'
|
8264
|
+
model: 'Reno2 Z'
|
7455
8265
|
- regex: 'CPH1969'
|
7456
8266
|
model: 'F11 Pro'
|
7457
8267
|
- regex: 'CPH1911'
|
7458
8268
|
model: 'F11'
|
7459
8269
|
- regex: 'CPH1917'
|
7460
8270
|
model: 'Reno'
|
8271
|
+
- regex: 'CPH1921'
|
8272
|
+
model: 'Reno 5G'
|
7461
8273
|
- regex: 'PCCM00'
|
7462
8274
|
model: 'Reno 10X'
|
7463
8275
|
- regex: 'CPH1919'
|
@@ -7546,6 +8358,12 @@ OPPO:
|
|
7546
8358
|
model: 'A3s'
|
7547
8359
|
- regex: '(?:OPPO[ _]?)?(?:CPH1809|PBAT00)[);/ ]'
|
7548
8360
|
model: 'A5'
|
8361
|
+
- regex: 'CPH1933'
|
8362
|
+
model: 'A5 (2020)'
|
8363
|
+
- regex: '(?:OPPO[ _]?)?CPH1938[);/ ]'
|
8364
|
+
model: 'A9 (EN)'
|
8365
|
+
- regex: 'CPH1937'
|
8366
|
+
model: 'A9 (2020)'
|
7549
8367
|
- regex: '(?:OPPO[ _]?)?CPH18(19|21)[);/ ]'
|
7550
8368
|
model: 'F7'
|
7551
8369
|
- regex: '(?:OPPO[ _]?)?CPH1823[);/ ]'
|
@@ -7560,6 +8378,8 @@ OPPO:
|
|
7560
8378
|
model: 'A3'
|
7561
8379
|
- regex: '(?:OPPO[ _]?)?CPH1851[);/ ]'
|
7562
8380
|
model: 'AX5'
|
8381
|
+
- regex: 'CPH1920'
|
8382
|
+
model: 'AX5s'
|
7563
8383
|
- regex: '(?:OPPO[ _]?)?CPH1859[);/ ]'
|
7564
8384
|
model: 'F7'
|
7565
8385
|
- regex: '(?:OPPO[ _]?)?CPH1861[);/ ]'
|
@@ -7568,7 +8388,7 @@ OPPO:
|
|
7568
8388
|
model: 'K1'
|
7569
8389
|
- regex: 'RMX1811'
|
7570
8390
|
model: 'RealMe C1'
|
7571
|
-
- regex: 'RMX194[
|
8391
|
+
- regex: 'RMX194[135]'
|
7572
8392
|
model: 'RealMe C2'
|
7573
8393
|
- regex: 'RMX1831'
|
7574
8394
|
model: 'RealMe U1'
|
@@ -7576,9 +8396,9 @@ OPPO:
|
|
7576
8396
|
model: 'Find X'
|
7577
8397
|
- regex: '(?:OPPO[ _]?)?CPH1877[);/ ]'
|
7578
8398
|
model: 'R17 Pro'
|
7579
|
-
- regex: '(?:OPPO[ _]?)?(?:CPH1879|
|
8399
|
+
- regex: '(?:OPPO[ _]?)?(?:CPH1879|PBE[MT]00)[);/ ]'
|
7580
8400
|
model: 'R17'
|
7581
|
-
- regex: '(?:OPPO[ _]?)?CPH1881[);/ ]'
|
8401
|
+
- regex: '(?:OPPO[ _]?)?(?:CPH1825|CPH1881)[);/ ]'
|
7582
8402
|
model: 'F9'
|
7583
8403
|
- regex: '(?:OPPO[ _]?)?CPH1893[);/ ]'
|
7584
8404
|
model: 'R17 Neo'
|
@@ -7586,26 +8406,42 @@ OPPO:
|
|
7586
8406
|
model: 'A7'
|
7587
8407
|
- regex: '(?:OPPO[ _]?)?CPH1903[);/ ]'
|
7588
8408
|
model: 'AX7'
|
7589
|
-
- regex: '(?:OPPO[ _]?)?A37f(w)? Build'
|
8409
|
+
- regex: '(?:OPPO[ _]?)?A37f(w)?(?: Build|\))'
|
7590
8410
|
model: 'A37f$1'
|
7591
8411
|
- regex: '(?:OPPO[ _]?)?PADM00'
|
7592
8412
|
model: 'A3'
|
7593
8413
|
- regex: '(?:OPPO[ _]?)?PBAM00'
|
7594
8414
|
model: 'A5'
|
7595
|
-
- regex: '(?:OPPO[ _]?)?A1601
|
8415
|
+
- regex: '(?:OPPO[ _]?)?A1601[);/ ]'
|
7596
8416
|
model: 'F1s'
|
7597
8417
|
- regex: '(?:OPPO[ _]?)?R1011 Build'
|
7598
8418
|
model: 'Joy Plus'
|
7599
|
-
- regex: '(?:OPPO[ _]?)?(?:PAC[TM]00|PAAM00)
|
8419
|
+
- regex: '(?:OPPO[ _]?)?(?:PAC[TM]00|PAAM00)[);/ ]'
|
7600
8420
|
model: 'R15'
|
8421
|
+
- regex: 'PBCM10[);/ ]'
|
8422
|
+
model: 'R15x'
|
7601
8423
|
- regex: 'RMX180[59]'
|
7602
8424
|
model: 'Realme 2'
|
7603
8425
|
- regex: 'RMX180[17]'
|
7604
8426
|
model: 'Realme 2 Pro'
|
7605
8427
|
- regex: 'RMX1833|RMX182[15]'
|
7606
8428
|
model: 'Realme 3'
|
8429
|
+
- regex: 'RMX1827'
|
8430
|
+
model: 'Realme 3i'
|
7607
8431
|
- regex: 'RMX1851'
|
7608
8432
|
model: 'Realme 3 Pro'
|
8433
|
+
- regex: 'RMX1901'
|
8434
|
+
model: 'Realme X'
|
8435
|
+
- regex: 'RMX1911'
|
8436
|
+
model: 'Realme 5'
|
8437
|
+
- regex: 'RMX1971'
|
8438
|
+
model: 'Realme 5 Pro'
|
8439
|
+
- regex: '(PBBT00|PBBM00)[);/ ]'
|
8440
|
+
model: 'A7x'
|
8441
|
+
- regex: 'PCDM00[);/ ]'
|
8442
|
+
model: 'A7n'
|
8443
|
+
- regex: 'PBBM30[);/ ]'
|
8444
|
+
model: 'A3s'
|
7609
8445
|
- regex: 'N1T?[);/ ]'
|
7610
8446
|
model: 'N1T'
|
7611
8447
|
device: 'phablet'
|
@@ -7633,7 +8469,7 @@ Opsson:
|
|
7633
8469
|
|
7634
8470
|
# orange
|
7635
8471
|
Orange:
|
7636
|
-
regex: 'SPV[ \-]?([a-z0-9]+)|Orange[ _-]([^/;]+) Build|SC/IHD92|FunTab ([^/;]+) Build'
|
8472
|
+
regex: 'SPV[ \-]?([a-z0-9]+)|Orange[ _-](?!Tahiti-LS\))([^/;]+)( Build|\))(?<!Tahiti-LS\))|SC/IHD92|FunTab ([^/;]+) Build'
|
7637
8473
|
device: 'smartphone'
|
7638
8474
|
models:
|
7639
8475
|
- regex: 'SC/IHD92'
|
@@ -7645,7 +8481,11 @@ Orange:
|
|
7645
8481
|
- regex: 'FunTab ([^/;]+) Build'
|
7646
8482
|
model: 'FunTab $1'
|
7647
8483
|
device: 'tablet'
|
7648
|
-
- regex: 'Orange[ _-]([
|
8484
|
+
- regex: 'Orange[ _-](Rise)(3[12]|5[12])[ ;/)]'
|
8485
|
+
model: '$1 $2'
|
8486
|
+
- regex: 'Orange[ _-](Dive)72[ ;/)]'
|
8487
|
+
model: '$1 72'
|
8488
|
+
- regex: 'Orange[ _-](Daytona|Dive (30|7[13])|Dublin|Fova|Gova|Hi 4G|Hiro|Kivo|Monte Carlo|Neva 80|Neva play|Nura|Reyo|Rise[_ ](3[034]|40|5[34])|Rono|Roya|San Francisco|Tactile internet 2|Tado|Yomi|Yumo|Zali)[ ;/)]'
|
7649
8489
|
model: '$1'
|
7650
8490
|
- regex: 'SPV[ \-]?([a-z0-9]+)'
|
7651
8491
|
model: 'SPV $1'
|
@@ -7806,7 +8646,7 @@ Pentagram:
|
|
7806
8646
|
|
7807
8647
|
# philips
|
7808
8648
|
Philips:
|
7809
|
-
regex: 'Philips|AND1E[);/ ]|NETTV/|PI3210G|
|
8649
|
+
regex: 'Philips|AND1E[);/ ]|NETTV/|PI3210G|TLE(821L|722G)'
|
7810
8650
|
device: 'smartphone'
|
7811
8651
|
models:
|
7812
8652
|
- regex: 'AND1E(?: TV)?[);/ ]'
|
@@ -7818,6 +8658,9 @@ Philips:
|
|
7818
8658
|
- regex: '(TLE821L)[);/ ]'
|
7819
8659
|
model: '$1 4G LTE'
|
7820
8660
|
device: 'tablet'
|
8661
|
+
- regex: '(TLE722G)[);/ ]'
|
8662
|
+
model: '$1'
|
8663
|
+
device: 'tablet'
|
7821
8664
|
- regex: 'Philips, BDP([0-9]{4})'
|
7822
8665
|
model: 'Blu-ray Player (BDP$1)'
|
7823
8666
|
device: 'tv'
|
@@ -7972,6 +8815,12 @@ Rokit:
|
|
7972
8815
|
- regex: 'IO Pro'
|
7973
8816
|
model: 'IO Pro'
|
7974
8817
|
|
8818
|
+
# Rombica
|
8819
|
+
Rombica:
|
8820
|
+
regex: 'SSQ-A0500[);/ ]'
|
8821
|
+
device: 'tv'
|
8822
|
+
model: 'Smart Stick 4K'
|
8823
|
+
|
7975
8824
|
# Rover
|
7976
8825
|
Rover:
|
7977
8826
|
regex: 'Rover ([0-9]+)'
|
@@ -8012,7 +8861,7 @@ Siemens:
|
|
8012
8861
|
model: '$1'
|
8013
8862
|
- regex: 'SIE(?:MENS )?[\-]?([a-z0-9]+)'
|
8014
8863
|
model: '$1'
|
8015
|
-
- regex: '(S55|SL45i)'
|
8864
|
+
- regex: '(?:SIE-)?(S55|SL45i)'
|
8016
8865
|
model: '$1'
|
8017
8866
|
- regex: 'portalmmm/2.0 (SI[a-z0-9]+)'
|
8018
8867
|
model: '$1'
|
@@ -8205,10 +9054,10 @@ Samsung:
|
|
8205
9054
|
- regex: '(?:SAMSUNG-)?SM-T285'
|
8206
9055
|
device: 'tablet'
|
8207
9056
|
model: 'GALAXY Tab A 7.0" LTE'
|
8208
|
-
- regex: '(?:SAMSUNG-)?SM-
|
9057
|
+
- regex: '(?:SAMSUNG-)?SM-T3[58]0'
|
8209
9058
|
device: 'tablet'
|
8210
9059
|
model: 'GALAXY Tab A 8.0" WiFi'
|
8211
|
-
- regex: '(?:SAMSUNG-)?SM-(?:P350|T3[58]5
|
9060
|
+
- regex: '(?:SAMSUNG-)?SM-(?:P350|T3[58]5)'
|
8212
9061
|
device: 'tablet'
|
8213
9062
|
model: 'GALAXY Tab A 8.0" LTE'
|
8214
9063
|
- regex: '(?:SAMSUNG-)?SM-T295'
|
@@ -8241,6 +9090,12 @@ Samsung:
|
|
8241
9090
|
- regex: '(?:SAMSUNG-)?SM-T39[57]'
|
8242
9091
|
device: 'tablet'
|
8243
9092
|
model: 'GALAXY Tab Active 2'
|
9093
|
+
- regex: '(?:SAMSUNG-)?SM-M305'
|
9094
|
+
device: 'tablet'
|
9095
|
+
model: 'GALAXY M30'
|
9096
|
+
- regex: '(?:SAMSUNG-)?SM-M405'
|
9097
|
+
device: 'tablet'
|
9098
|
+
model: 'GALAXY M40'
|
8244
9099
|
|
8245
9100
|
# explicit smartphone models
|
8246
9101
|
- regex: '(?:SAMSUNG-)?SM-G850[AMSWY]'
|
@@ -8509,6 +9364,8 @@ Samsung:
|
|
8509
9364
|
model: 'GALAXY A9 Pro'
|
8510
9365
|
- regex: '(?:SAMSUNG-)?SM-A105[FGM]'
|
8511
9366
|
model: 'GALAXY A10'
|
9367
|
+
- regex: '(?:SAMSUNG-)?SM-A107[FM]'
|
9368
|
+
model: 'GALAXY A10s'
|
8512
9369
|
- regex: '(?:SAMSUNG-)?SM-A205[FG]'
|
8513
9370
|
model: 'GALAXY A20'
|
8514
9371
|
- regex: '(?:SAMSUNG-)?SM-A202[FG]'
|
@@ -8517,6 +9374,8 @@ Samsung:
|
|
8517
9374
|
model: 'GALAXY A30'
|
8518
9375
|
- regex: '(?:SAMSUNG-)?SM-A405FN'
|
8519
9376
|
model: 'GALAXY A40'
|
9377
|
+
- regex: '(?:SAMSUNG-)?SM-A3051'
|
9378
|
+
model: 'GALAXY A40s'
|
8520
9379
|
- regex: '(?:SAMSUNG-)?SM-A505(?:FN|[FG])'
|
8521
9380
|
model: 'GALAXY A50'
|
8522
9381
|
- regex: '(?:SAMSUNG-)?SM-A705(?:FN|[FG])'
|
@@ -8537,6 +9396,10 @@ Samsung:
|
|
8537
9396
|
model: 'GALAXY J1 Ace'
|
8538
9397
|
- regex: '(?:SAMSUNG-)?SM-J200[FGHY]'
|
8539
9398
|
model: 'GALAXY J2'
|
9399
|
+
- regex: '(?:SAMSUNG-)?SM-J260AZ'
|
9400
|
+
model: 'GALAXY J2 Pure'
|
9401
|
+
- regex: '(?:SAMSUNG-)?SM-J260([AFGM]|T1)'
|
9402
|
+
model: 'GALAXY J2 Core'
|
8540
9403
|
- regex: '(?:SAMSUNG-)?SM-J(?:210F|250[FM])'
|
8541
9404
|
model: 'GALAXY J2 Pro'
|
8542
9405
|
- regex: '(?:SAMSUNG-)?SM-J320(?:FN|[AFGHMNPV])'
|
@@ -8561,7 +9424,7 @@ Samsung:
|
|
8561
9424
|
model: 'GALAXY J6+'
|
8562
9425
|
- regex: '(?:SAMSUNG-)?SM-J410F'
|
8563
9426
|
model: 'GALAXY J4 Core'
|
8564
|
-
- regex: '(?:SAMSUNG-)?SM-
|
9427
|
+
- regex: '(?:SAMSUNG-)?SM-J415(?:F|FN)'
|
8565
9428
|
model: 'GALAXY J4+'
|
8566
9429
|
- regex: '(?:SAMSUNG-)?SM-J7[01]0(?:8|F|FN|H|K|M|MN)'
|
8567
9430
|
model: 'GALAXY J7'
|
@@ -8599,6 +9462,8 @@ Samsung:
|
|
8599
9462
|
model: 'GALAXY M10'
|
8600
9463
|
- regex: '(?:SAMSUNG-)?SM-M205[FG]'
|
8601
9464
|
model: 'GALAXY M20'
|
9465
|
+
- regex: '(?:SAMSUNG-)?SM-M307(F|FN)'
|
9466
|
+
model: 'GALAXY M30s'
|
8602
9467
|
- regex: '(?:SAMSUNG-)?SM-G850F'
|
8603
9468
|
model: 'GALAXY Alpha'
|
8604
9469
|
- regex: '(?:SAMSUNG-)?SM-G910S'
|
@@ -8711,7 +9576,7 @@ Samsung:
|
|
8711
9576
|
- regex: '(?:SAMSUNG-)?GT-I920[05]'
|
8712
9577
|
model: 'GALAXY Mega 6.3'
|
8713
9578
|
device: 'phablet'
|
8714
|
-
- regex: '(?:SAMSUNG-)?SM-N930F|SCV34'
|
9579
|
+
- regex: '(?:SAMSUNG-)?(?:SM-N930F|SCV34)'
|
8715
9580
|
model: 'GALAXY Note 7'
|
8716
9581
|
device: 'phablet'
|
8717
9582
|
- regex: '(?:SAMSUNG[- ])?SM-N950|SCV37'
|
@@ -8720,6 +9585,12 @@ Samsung:
|
|
8720
9585
|
- regex: '(?:SAMSUNG[- ])?SM-N960'
|
8721
9586
|
model: 'GALAXY Note 9'
|
8722
9587
|
device: 'phablet'
|
9588
|
+
- regex: '(?:SAMSUNG[- ])?SM-N970(?:0|8|9|D|F|J|K|L|S|U1|U|W8|X)'
|
9589
|
+
model: 'GALAXY Note 10'
|
9590
|
+
device: 'phablet'
|
9591
|
+
- regex: '(?:SAMSUNG[- ])?(?:SM-N975(?:0|F|U|U1|W|X|Xu)|SM-N976[BV])'
|
9592
|
+
model: 'GALAXY Note 10+'
|
9593
|
+
device: 'phablet'
|
8723
9594
|
|
8724
9595
|
# explicit feature phones
|
8725
9596
|
- regex: '(?:SAMSUNG-)?GT-E2152'
|
@@ -9232,9 +10103,14 @@ Prestigio:
|
|
9232
10103
|
models:
|
9233
10104
|
- regex: 'PMT3277_3G'
|
9234
10105
|
model: 'MultiPad Ranger 7.0 3G'
|
10106
|
+
- regex: 'PMT3201_4G'
|
10107
|
+
model: 'Grace 4G'
|
9235
10108
|
- regex: 'PMT3287_3G'
|
9236
10109
|
model: 'MultiPad Ranger 8.0 3G'
|
9237
|
-
|
10110
|
+
- regex: 'PSP7546DUO([ _][A-Z]{2})?'
|
10111
|
+
model: 'X Pro'
|
10112
|
+
- regex: 'PSP7610DUO([ _][A-Z]{2})?'
|
10113
|
+
model: 'S Max'
|
9238
10114
|
- regex: '(PM[PT][0-9]+[a-z0-9_]+)[);/ ]'
|
9239
10115
|
model: '$1'
|
9240
10116
|
- regex: '((?:PAP|PSP)[0-9]+[a-z0-9_]+(?: DUO)?)[);/ ]'
|
@@ -9259,13 +10135,24 @@ Sanyo:
|
|
9259
10135
|
- regex: 'MobilePhone ([a-z0-9\-]+)'
|
9260
10136
|
model: '$1'
|
9261
10137
|
|
9262
|
-
# Qilive
|
10138
|
+
# Qilive (Auchan)
|
9263
10139
|
Qilive:
|
9264
|
-
regex: 'Qilive [0-9][^;/]*|
|
10140
|
+
regex: 'Qilive [0-9][^;/]*|Q(8S55IN4G2|10S5[37]IN4G|10S5IN4GR|10S6IN4G|6T7IN)'
|
9265
10141
|
device: 'smartphone'
|
9266
10142
|
models:
|
9267
10143
|
- regex: 'Q8S55IN4G2'
|
9268
|
-
model: '
|
10144
|
+
model: 'Q8 5.5" 4G'
|
10145
|
+
- regex: 'Q10S53IN4G'
|
10146
|
+
model: 'Q10 5.3" 4G'
|
10147
|
+
- regex: 'Q10S57IN4G'
|
10148
|
+
model: 'Q10 5.7" 4G'
|
10149
|
+
- regex: 'Q10S5IN4GR'
|
10150
|
+
model: 'Q10 5.0" 4G'
|
10151
|
+
- regex: 'Q10S6IN4G'
|
10152
|
+
model: 'Q10 6.0" 4G'
|
10153
|
+
- regex: 'Q6T7IN'
|
10154
|
+
model: 'Q6'
|
10155
|
+
device: 'tablet'
|
9269
10156
|
- regex: 'Qilive ([0-5][^;/]*) Build'
|
9270
10157
|
model: '$1'
|
9271
10158
|
- regex: 'Qilive ([0-5][^;/]*)/'
|
@@ -9453,7 +10340,7 @@ Star:
|
|
9453
10340
|
|
9454
10341
|
# Kindle
|
9455
10342
|
Amazon:
|
9456
|
-
regex: 'KF(?:OT|TT|JWI|JWA|[DFS]OWI|A[PRSU]WI|T[BH]WI|SAW[IA]|GIWI|SUWI)[);/ ]|Kindle|Silk/\d+\.\d+|Amazon (?:Tate|Jem)|AFT[BMST]|SD4930UR'
|
10343
|
+
regex: 'KF(?:OT|TT|JWI|JWA|[DFS]OWI|A[PRSU]WI|T[BH]WI|SAW[IA]|GIWI|SUWI)[);/ ]|Kindle|Silk/\d+\.\d+|Amazon (?:Tate|Jem)|AFT[BMST]|SD4930UR|AEO(BC|KN)[);/ ]'
|
9457
10344
|
device: 'tablet'
|
9458
10345
|
models:
|
9459
10346
|
- regex: 'AFTB'
|
@@ -9508,10 +10395,26 @@ Amazon:
|
|
9508
10395
|
- regex: 'Kindle'
|
9509
10396
|
model: 'Kindle'
|
9510
10397
|
|
10398
|
+
- regex: 'AEO(BC|KN)[);/ ]'
|
10399
|
+
model: 'Echo'
|
10400
|
+
device: 'smart speaker'
|
10401
|
+
|
9511
10402
|
# Symphony
|
9512
10403
|
Symphony:
|
9513
|
-
regex: 'SYMPHONY[ \_]([a-z0-9]+)'
|
10404
|
+
regex: 'SYMPHONY[ \_]([a-z0-9]+)|roar (V20|E80)'
|
9514
10405
|
device: 'smartphone'
|
10406
|
+
models:
|
10407
|
+
- regex: 'roar V20'
|
10408
|
+
model: 'Roar V20'
|
10409
|
+
- regex: 'roar E80'
|
10410
|
+
model: 'Roar E80'
|
10411
|
+
- regex: 'SYMPHONY[ \_]([a-z0-9]+)'
|
10412
|
+
model: '$1'
|
10413
|
+
|
10414
|
+
# Syrox
|
10415
|
+
Syrox:
|
10416
|
+
regex: '(SYX-(?:T70[04]|T10[12]))[;)/ ]'
|
10417
|
+
device: 'tablet'
|
9515
10418
|
model: '$1'
|
9516
10419
|
|
9517
10420
|
# Qtek
|
@@ -9548,14 +10451,14 @@ T-Mobile:
|
|
9548
10451
|
|
9549
10452
|
# Tcl
|
9550
10453
|
TCL:
|
9551
|
-
regex: 'TCL[ -][a-z0-9]+|(TCL[_ -][^;/]+|7040N) Build|TCLGalaG60|A502DL'
|
10454
|
+
regex: 'TCL[_ -][a-z0-9]+|(TCL[_ -][^;/]+|7040N) Build|TCLGalaG60|A502DL'
|
9552
10455
|
device: 'smartphone'
|
9553
10456
|
models:
|
9554
10457
|
- regex: 'TCLGalaG60'
|
9555
10458
|
model: 'Gala G60'
|
9556
10459
|
- regex: 'TCL[_ -]([^;/]+) Build'
|
9557
10460
|
model: '$1'
|
9558
|
-
- regex: 'TCL[ -]([a-z0-9]+)'
|
10461
|
+
- regex: 'TCL[_ -]([a-z0-9]+)'
|
9559
10462
|
model: '$1'
|
9560
10463
|
- regex: '(7040N)'
|
9561
10464
|
model: '$1'
|
@@ -9574,13 +10477,34 @@ Teclast:
|
|
9574
10477
|
|
9575
10478
|
# Tecno Mobile
|
9576
10479
|
Tecno Mobile:
|
9577
|
-
regex: 'Tecno|Phantom6|Phantom6-Plus'
|
10480
|
+
regex: 'Tecno|Phantom6|Phantom6-Plus|DP7C Pro-SGA1'
|
9578
10481
|
device: 'smartphone'
|
9579
10482
|
models:
|
9580
10483
|
- regex: 'Phantom6-Plus'
|
9581
10484
|
model: 'Phantom 6 Plus'
|
9582
10485
|
- regex: 'Phantom6'
|
9583
10486
|
model: 'Phantom 6'
|
10487
|
+
- regex: 'TECNO[ _]ID6[);/ ]'
|
10488
|
+
model: 'Camon iClick 2'
|
10489
|
+
- regex: 'Tecno[ _]7C[);/ ]'
|
10490
|
+
model: 'DroidPad 7C'
|
10491
|
+
device: 'tablet'
|
10492
|
+
- regex: 'DP7C Pro-SGA1[);/ ]'
|
10493
|
+
model: 'DroidPad 7C Pro'
|
10494
|
+
device: 'tablet'
|
10495
|
+
- regex: 'TECNO[ _]DP10A Pro[);/ ]'
|
10496
|
+
model: 'DroidPad 10A Pro'
|
10497
|
+
device: 'tablet'
|
10498
|
+
- regex: 'TECNO[ _]P904[);/ ]'
|
10499
|
+
model: 'DroidPad 10D 4G'
|
10500
|
+
device: 'tablet'
|
10501
|
+
- regex: 'Tecno[ _]CB7[j]?'
|
10502
|
+
model: 'Camon i4'
|
10503
|
+
- regex: 'Tecno[ _]DP8D[);/ ]'
|
10504
|
+
model: 'DroidPad 8D'
|
10505
|
+
device: 'tablet'
|
10506
|
+
- regex: 'Tecno[ _]LB8'
|
10507
|
+
model: 'Pouvoir 3 Plus'
|
9584
10508
|
- regex: 'Tecno ([^;/]+) Build'
|
9585
10509
|
model: '$1'
|
9586
10510
|
- regex: 'Tecno[ _]?([a-z0-9_\-]+)'
|
@@ -9613,7 +10537,7 @@ Tesco:
|
|
9613
10537
|
|
9614
10538
|
# teXet
|
9615
10539
|
teXet:
|
9616
|
-
regex: 'Texet|(NaviPad [^/;]*) Build|TM-(?:1046|1058|1057|1067|3000|3200R|3500|4003|4071|450[34]|451[30]|4377|4082R|550[83]|5010|5017|
|
10540
|
+
regex: 'Texet|(NaviPad [^/;]*) Build|TM-(?:1046|1058|1057|1067|3000|3200R|3500|4003|4071|450[34]|451[30]|4377|4082R|550[83]|5010|5017|507[4-7]|5[23]77|6003|6906|702[13]|7055HD|709[69]|9747BT|9758|9751HD|9767|5513|520[410]|5505|507[13]|5581|7859|8044|9748[ _]3G|9720|7047HD[ _]3G|9757|9740|4982|4515|4083|500[3567]|5571|3204R|5016|8043|7047HD[ _]3G|8041HD|8066|705[23]|7041|8041HD|8051|8048|974[96]|973[78]W|974[10]|9743W|9750HD|7043XD|7049|7887|7037W|702[46])|TB-(771A|711A)|X-Force[\(-]?TM-5009\)?|X-Plus[\(-]?TM-5577\)?|X-pad (?:AIR 8|iX 7) 3G'
|
9617
10541
|
device: 'tablet'
|
9618
10542
|
models:
|
9619
10543
|
- regex: 'TM-9749'
|
@@ -9653,7 +10577,7 @@ teXet:
|
|
9653
10577
|
- regex: 'TM-4503'
|
9654
10578
|
device: 'smartphone'
|
9655
10579
|
model: 'X-Quad'
|
9656
|
-
- regex: '(TM-(?:3000|3200R|4003|4083|4377|4504|451[30]|500[35]|5[23]77|5571|3204R|520[04]|5581|5505|
|
10580
|
+
- regex: '(TM-(?:3000|3200R|4003|4083|4377|4504|451[30]|500[35]|5[23]77|5571|3204R|520[04]|5581|5505|507[13]|5017|507[4-7]|6003|5513))'
|
9657
10581
|
device: 'smartphone'
|
9658
10582
|
model: '$1'
|
9659
10583
|
- regex: 'TM-5006'
|
@@ -9771,6 +10695,16 @@ Timovi:
|
|
9771
10695
|
- regex: 'Infinit_Lite_2'
|
9772
10696
|
model: 'Infinit Lite 2'
|
9773
10697
|
|
10698
|
+
# Tooky
|
10699
|
+
Tooky:
|
10700
|
+
regex: 'TOOKY'
|
10701
|
+
device: 'smartphone'
|
10702
|
+
models:
|
10703
|
+
- regex: 'TOOKY (A19|W1|T8[368]|T1982)[);/ ]'
|
10704
|
+
model: '$1'
|
10705
|
+
- regex: 'TOOKY A9PLUS[);/ ]'
|
10706
|
+
model: 'A9 Plus'
|
10707
|
+
|
9774
10708
|
# Tolino
|
9775
10709
|
Tolino:
|
9776
10710
|
regex: 'Tolino Tab ([^/;]+) Build'
|
@@ -9902,9 +10836,9 @@ Uhappy:
|
|
9902
10836
|
|
9903
10837
|
# Unimax
|
9904
10838
|
Unimax:
|
9905
|
-
regex: 'U(67[013]|680)C'
|
10839
|
+
regex: 'U((?:67[013]|680)C|(?:452|504)TL|683CL)[);/ ]'
|
9906
10840
|
device: 'smartphone'
|
9907
|
-
model: 'U$
|
10841
|
+
model: 'U$1'
|
9908
10842
|
|
9909
10843
|
# Unowhy
|
9910
10844
|
Unowhy:
|
@@ -10009,6 +10943,11 @@ Unonu:
|
|
10009
10943
|
- regex: 'Unonu[ _-]?([^;/)]+)[);/ ]'
|
10010
10944
|
model: '$1'
|
10011
10945
|
|
10946
|
+
# UTOK
|
10947
|
+
UTOK:
|
10948
|
+
regex: 'UTOK (45[01]D)'
|
10949
|
+
device: 'smartphone'
|
10950
|
+
model: '$1'
|
10012
10951
|
|
10013
10952
|
# Vastking
|
10014
10953
|
Vastking:
|
@@ -10045,9 +10984,15 @@ Vitelcom:
|
|
10045
10984
|
- regex: 'portalmmm/[12].0 (TSM[a-z0-9 ]+)'
|
10046
10985
|
model: '$1'
|
10047
10986
|
|
10987
|
+
# Fengxiang
|
10988
|
+
Fengxiang:
|
10989
|
+
regex: '(vKB011B|vKB004L)'
|
10990
|
+
device: 'tablet'
|
10991
|
+
model: '$1'
|
10992
|
+
|
10048
10993
|
# VK Mobile
|
10049
10994
|
VK Mobile:
|
10050
|
-
regex: 'VK(?!share)[\-]?([a-z0-9 ]+)[
|
10995
|
+
regex: 'VK(?!share)[\-]?([a-z0-9 ]+)([;\)/ ]| Build)'
|
10051
10996
|
device: 'feature phone'
|
10052
10997
|
model: '$1'
|
10053
10998
|
|
@@ -10079,6 +11024,12 @@ Vertu:
|
|
10079
11024
|
device: 'feature phone'
|
10080
11025
|
model: '$1'
|
10081
11026
|
|
11027
|
+
# Venso mobile
|
11028
|
+
Venso:
|
11029
|
+
regex: '(CX-508)[/;) ]'
|
11030
|
+
device: 'smartphone'
|
11031
|
+
model: '$1'
|
11032
|
+
|
10082
11033
|
# Verizon
|
10083
11034
|
Verizon:
|
10084
11035
|
regex: 'QTA(SUN[12]|XIA1|QZ3|QZ3KID|IR7)|QMV7B'
|
@@ -10175,8 +11126,12 @@ Vodafone:
|
|
10175
11126
|
model: 'Smart X9'
|
10176
11127
|
- regex: 'VFD 610'
|
10177
11128
|
model: 'Smart N8'
|
11129
|
+
- regex: 'Smart ultra 6'
|
11130
|
+
model: 'Smart Ultra 6'
|
10178
11131
|
- regex: 'VFD 700'
|
10179
11132
|
model: 'Smart Ultra 7'
|
11133
|
+
- regex: 'VFD 720'
|
11134
|
+
model: 'Smart N9'
|
10180
11135
|
- regex: 'VFD 900'
|
10181
11136
|
model: 'Smart Platinum 7'
|
10182
11137
|
- regex: 'Vodafone[ _]875[);/ ]'
|
@@ -10210,6 +11165,9 @@ Vodafone:
|
|
10210
11165
|
- regex: 'Smart ?Tab ?4G'
|
10211
11166
|
device: 'tablet'
|
10212
11167
|
model: 'Smart Tab 4G' # Alcatel
|
11168
|
+
- regex: 'Smart ?Tab ?4'
|
11169
|
+
model: 'Smart Tab 4' # ZTE
|
11170
|
+
device: 'tablet'
|
10213
11171
|
- regex: 'SmartTab7[);/ -]'
|
10214
11172
|
model: 'Smart Tab 7' # ZTE
|
10215
11173
|
device: 'tablet'
|
@@ -10238,7 +11196,7 @@ Vodafone:
|
|
10238
11196
|
|
10239
11197
|
# Vonino
|
10240
11198
|
Vonino:
|
10241
|
-
regex: 'Vonino|
|
11199
|
+
regex: 'Vonino|Epic (?:E8|P7)|Gyga[ _](?:X|S|QS|XS)|Jax[ _](?:Q|QS|S|X|Mini)|Magnet[ _]M[19]|Navo_QS|Onyx_(QS|Z)|Orin_QS|Pluri[ _](?:[BCMQ]7|[CQ]8)|Sirius_QS|Volt[ _][XS]|Xavy_T7|Xylo[ _][XSP]|Zun[ _]X[OS]?'
|
10242
11200
|
device: 'smartphone'
|
10243
11201
|
models:
|
10244
11202
|
- regex: 'Zun[ _]XO'
|
@@ -10269,6 +11227,9 @@ Vonino:
|
|
10269
11227
|
model: 'Jax $1'
|
10270
11228
|
- regex: 'Jax[ _]Mini'
|
10271
11229
|
model: 'Jax Mini'
|
11230
|
+
- regex: 'Epic (E8|P7)'
|
11231
|
+
model: 'Epic $1'
|
11232
|
+
device: 'tablet'
|
10272
11233
|
- regex: 'Pluri[ _](B|C|M|Q)7'
|
10273
11234
|
model: 'Pluri $17'
|
10274
11235
|
device: 'tablet'
|
@@ -10281,6 +11242,15 @@ Vonino:
|
|
10281
11242
|
- regex: 'Navo_QS'
|
10282
11243
|
model: 'Navo QS'
|
10283
11244
|
device: 'tablet'
|
11245
|
+
- regex: 'Onyx_(QS|Z)'
|
11246
|
+
model: 'Onyx $1'
|
11247
|
+
device: 'tablet'
|
11248
|
+
- regex: 'Orin_QS'
|
11249
|
+
model: 'Orin QS'
|
11250
|
+
device: 'tablet'
|
11251
|
+
- regex: 'Sirius_QS'
|
11252
|
+
model: 'Sirius QS'
|
11253
|
+
device: 'tablet'
|
10284
11254
|
- regex: 'Xavy_T7'
|
10285
11255
|
model: 'Xavy T7'
|
10286
11256
|
device: 'tablet'
|
@@ -10582,13 +11552,13 @@ X-View:
|
|
10582
11552
|
|
10583
11553
|
# Xiaomi
|
10584
11554
|
Xiaomi:
|
10585
|
-
regex: 'Xiaomi(?!/MiuiBrowser)|(?:MI [a-z0-9]+|Mi-4c|MI-One[ _]?[a-z0-9]+|MIX(?: 2S?)?)[);/ ]|HM (?:[^/;]+) (?:Build|MIUI)|(?:2014501|2014011|201481[
|
11555
|
+
regex: 'Xiaomi(?!/MiuiBrowser)|(?:MI [a-z0-9]+|Mi-4c|MI-One[ _]?[a-z0-9]+|MIX(?: 2S?)?)[);/ ]|HM (?:[^/;]+) (?:Build|MIUI)|(?:2014501|2014011|201481[12378]|201302[23]|2013061) Build|Redmi|POCOPHONE|SKR-[AH]0|SKW-[AH]0|POCO F1'
|
10586
11556
|
device: 'smartphone'
|
10587
11557
|
models:
|
10588
11558
|
# specific smartphone models
|
10589
11559
|
- regex: 'SKR-[AH]0'
|
10590
11560
|
model: 'Black Shark'
|
10591
|
-
- regex: 'SKW-
|
11561
|
+
- regex: 'SKW-[AH]0'
|
10592
11562
|
model: 'Black Shark 2'
|
10593
11563
|
- regex: 'Xiaomi_2014501|2014501 Build'
|
10594
11564
|
model: 'Hongmi 4G'
|
@@ -10596,27 +11566,86 @@ Xiaomi:
|
|
10596
11566
|
model: 'Hongmi 1S'
|
10597
11567
|
- regex: 'Xiaomi_201302[23]|201302[23] Build'
|
10598
11568
|
model: 'Hongmi'
|
10599
|
-
- regex: '
|
11569
|
+
- regex: 'Xiaomi_2014818|2014818 Build'
|
11570
|
+
model: 'Hongmi 2 3G'
|
11571
|
+
- regex: 'Xiaomi_2014817|2014817 Build'
|
10600
11572
|
model: 'Hongmi 2'
|
11573
|
+
- regex: 'Xiaomi_201481[123]|201481[123] Build'
|
11574
|
+
model: 'Hongmi 2 4G'
|
11575
|
+
- regex: 'Mi 9 SE[);/ ]'
|
11576
|
+
model: 'MI 9 SE'
|
11577
|
+
- regex: 'MI 8 Lite[);/ ]'
|
11578
|
+
model: 'MI 8 Lite'
|
11579
|
+
- regex: 'MI 5s Plus[);/ ]'
|
11580
|
+
model: 'MI 5s Plus'
|
10601
11581
|
- regex: 'Xiaomi_2013061|2013061 Build'
|
10602
11582
|
model: 'MI 3'
|
10603
11583
|
- regex: 'Mi-4c[);/ ]'
|
10604
11584
|
model: 'MI 4C'
|
11585
|
+
- regex: 'MI MAX 3[);/ ]'
|
11586
|
+
model: 'MI MAX 3'
|
11587
|
+
- regex: 'MI MAX 2[);/ ]'
|
11588
|
+
model: 'MI MAX 2'
|
11589
|
+
- regex: 'Mi A2 Lite[);/ ]'
|
11590
|
+
model: 'MI A2 Lite'
|
11591
|
+
- regex: 'MIX 3[);/ ]'
|
11592
|
+
model: 'MI MIX 3'
|
10605
11593
|
- regex: 'MIX 2S[);/ ]'
|
10606
11594
|
model: 'MI MIX 2S'
|
10607
11595
|
- regex: 'MIX 2[);/ ]'
|
10608
11596
|
model: 'MI MIX 2'
|
10609
11597
|
- regex: 'MIX[);/ ]'
|
10610
11598
|
model: 'MI MIX'
|
10611
|
-
- regex: 'POCOPHONE F1'
|
11599
|
+
- regex: 'POCOPHONE F1|POCO F1'
|
10612
11600
|
model: 'Pocophone F1'
|
11601
|
+
- regex: 'Redmi 5 Plus'
|
11602
|
+
model: 'Redmi 5 Plus'
|
11603
|
+
- regex: 'HM 2A[);/ ]'
|
11604
|
+
model: 'Redmi 2A'
|
11605
|
+
- regex: 'HM 1S[CW]?[);/ ]'
|
11606
|
+
model: 'Redmi 1S'
|
11607
|
+
- regex: 'HM 1[);/ ]'
|
11608
|
+
model: 'Redmi 1'
|
11609
|
+
- regex: 'MI PAD 4 PLUS[);/ ]'
|
11610
|
+
model: 'Mi Pad 4 Plus'
|
11611
|
+
device: 'tablet'
|
11612
|
+
- regex: 'MI PAD 4[);/ ]'
|
11613
|
+
model: 'Mi Pad 4'
|
11614
|
+
device: 'tablet'
|
11615
|
+
- regex: 'MI PAD 3[);/ ]'
|
11616
|
+
model: 'Mi Pad 3'
|
11617
|
+
device: 'tablet'
|
11618
|
+
- regex: 'MI PAD 2[);/ ]'
|
11619
|
+
model: 'Mi Pad 2'
|
11620
|
+
device: 'tablet'
|
11621
|
+
- regex: 'MI PAD[);/ ]'
|
11622
|
+
model: 'Mi Pad'
|
11623
|
+
device: 'tablet'
|
11624
|
+
- regex: 'HM NOTE 1W (?:Build|MIUI)'
|
11625
|
+
device: 'phablet'
|
11626
|
+
model: 'Redmi Note'
|
11627
|
+
- regex: 'HM NOTE 1TD (?:Build|MIUI)'
|
11628
|
+
device: 'phablet'
|
11629
|
+
model: 'Hongmi Note 1TD'
|
11630
|
+
- regex: 'HM NOTE 1(?:LTE|S)(?:W|GLOBAL|TD)? (?:Build|MIUI)'
|
11631
|
+
device: 'phablet'
|
11632
|
+
model: 'Redmi Note 4G'
|
11633
|
+
- regex: 'Redmi Note 6 Pro'
|
11634
|
+
model: 'Redmi Note 6 Pro'
|
11635
|
+
device: 'phablet'
|
11636
|
+
- regex: 'Redmi Note 5 Pro'
|
11637
|
+
model: 'Redmi Note 5 Pro'
|
11638
|
+
device: 'phablet'
|
11639
|
+
- regex: 'Redmi Note 5A Prime'
|
11640
|
+
model: 'Redmi Note 5A Prime'
|
11641
|
+
device: 'phablet'
|
10613
11642
|
|
10614
|
-
- regex: 'Redmi Note ([^;/) ]+)?'
|
11643
|
+
- regex: 'Redmi[ _]Note[ _]([^;/) ]+)?'
|
10615
11644
|
model: 'Redmi Note $1'
|
10616
11645
|
device: 'phablet'
|
10617
|
-
- regex: 'Redmi ([^;/) ]+)?'
|
11646
|
+
- regex: 'Redmi[ _]([^;/) ]+)?'
|
10618
11647
|
model: 'Redmi $1'
|
10619
|
-
- regex: 'MI Note ([^;/) ]+)?'
|
11648
|
+
- regex: 'MI[ _]Note[ _]([^;/) ]+)?'
|
10620
11649
|
model: 'MI Note $1'
|
10621
11650
|
device: 'phablet'
|
10622
11651
|
- regex: '(MI(?:-One)?[ _](?:[^;/]*))Build'
|
@@ -10646,7 +11675,7 @@ Xolo:
|
|
10646
11675
|
models:
|
10647
11676
|
- regex: 'BLACK-1XM'
|
10648
11677
|
model: 'Black 1X'
|
10649
|
-
- regex: '(Q600|Q700s?|Q800|Q1000s|Q1000[ _]Opus|Q1010i|Q2000|Omega[ _]5.[05])[);/ ]'
|
11678
|
+
- regex: '(Q600 Club|Q600|Q700s?|Q800|Q1000s Plus|Q1000s|Q1000[ _]Opus|Q1010i|Q2000|Omega[ _]5.[05])[);/ ]'
|
10650
11679
|
model: '$1'
|
10651
11680
|
- regex: 'Xolo[ _]?([^;/]+) Build'
|
10652
11681
|
model: '$1'
|
@@ -10915,6 +11944,18 @@ Toshiba:
|
|
10915
11944
|
- regex: 'portalmmm/[12].0 (TS[a-z0-9 ]+)'
|
10916
11945
|
model: '$1'
|
10917
11946
|
|
11947
|
+
# Vivax
|
11948
|
+
Vivax:
|
11949
|
+
regex: 'VIVAX|(Fly5[_ ]Lite)[;)/ ]'
|
11950
|
+
device: 'smartphone'
|
11951
|
+
models:
|
11952
|
+
- regex: 'Fly5[_ ]Lite'
|
11953
|
+
model: 'Fly 5 Lite'
|
11954
|
+
- regex: 'VIVAX[ _]Fly3'
|
11955
|
+
model: 'Fly 3'
|
11956
|
+
- regex: 'SMART Point X5010'
|
11957
|
+
model: 'Smart Point X5010'
|
11958
|
+
|
10918
11959
|
# Fly
|
10919
11960
|
Fly:
|
10920
11961
|
regex: 'Fly(?!Flow|touch)|FS50[1-9]|FS51[0-8]|FS52[0-9]|FS530|FS55[134]|FS40[1-9]|FS45[1-9]|4FS06|MERIDIAN-|(?:IQ[0-9]{3,})[ _]?(?:Quad|Firebird|Quattro|Turbo|Magic)?(?: Build|[;/\)])'
|
@@ -11184,22 +12225,53 @@ Zenek:
|
|
11184
12225
|
Zopo:
|
11185
12226
|
regex: '(?:ZOPO[_ ])?(Flash X3|ZP[0-9]{2,}[^/;]+) Build'
|
11186
12227
|
device: 'smartphone'
|
11187
|
-
|
12228
|
+
models:
|
12229
|
+
- regex: 'ZP998[);/ ]'
|
12230
|
+
model: 'C2 II'
|
12231
|
+
- regex: '(?:ZOPO_)?ZP980[+][);/ ]'
|
12232
|
+
model: 'ZP980+'
|
12233
|
+
- regex: '(?:ZOPO_)?ZP980[);/ ]'
|
12234
|
+
model: 'Scorpio'
|
12235
|
+
- regex: 'ZP952[);/ ]'
|
12236
|
+
model: 'Speed 7 Plus'
|
12237
|
+
- regex: 'ZP951[);/ ]'
|
12238
|
+
model: 'Speed 7'
|
12239
|
+
- regex: 'ZP950[+h]?[);/ ]'
|
12240
|
+
model: 'Leader Max'
|
12241
|
+
- regex: 'ZP(?:900H?|910)[);/ ]'
|
12242
|
+
model: 'Leader'
|
12243
|
+
- regex: 'ZP(?:800H|810)[);/ ]'
|
12244
|
+
model: 'Libero HD'
|
12245
|
+
- regex: 'ZP500[+]?[);/ ]'
|
12246
|
+
model: 'Libero'
|
12247
|
+
- regex: 'ZP330[);/ ]'
|
12248
|
+
model: 'Color C'
|
12249
|
+
- regex: 'ZP300[S+]?[);/ ]'
|
12250
|
+
model: 'Field'
|
12251
|
+
- regex: 'ZP200[+]?[);/ ]'
|
12252
|
+
model: 'Shining'
|
12253
|
+
- regex: 'ZP100[);/ ]'
|
12254
|
+
model: 'Pilot'
|
12255
|
+
|
12256
|
+
- regex: '(Flash X3|ZP[0-9]{2,}[^/;]+) Build'
|
12257
|
+
model: '$1'
|
11188
12258
|
|
11189
12259
|
# ZTE
|
11190
12260
|
ZTE:
|
11191
|
-
regex: 'ZTE|AxonPhone|([a-z0-9]+)_USA_Cricket|(?:Blade (?:L110|L[2357]|L7A|S6|V[6789]|V8Q|V8 SE|V9 VITA|X7|A(310|460|465|475|520|530|602)|V580)|N9[15]8St|NX(?:403A|404H|406E|40[X2]|507J|503A|505J|506J|508J|510J|512J|511J|513J|521J|523J_V1|529J|531J|541J|549J|551J|563J|569[HJ]|573J|575J|591J|595J|597J|601J|907J|616J)|N951[0579]|N9180|N9101|N913[67]|N952[01]|N9560|N9810|N799D|[UV]9180|[UV]9815|Z(?:233V|331|667T|768G|792|81[25]|82[08]|83[12359]|85[125]|851M|(557|
|
12261
|
+
regex: 'ZTE|AxonPhone|([a-z0-9]+)_USA_Cricket|(?:Blade (?:L110|L[2357]|L7A|S6|V[6789]|V8Q|V8 SE|V9 VITA|X7|A(310|460|465|475|520|530|602)|V580)|N9[15]8St|NX(?:403A|404H|406E|40[X2]|507J|503A|505J|506J|508J|510J|512J|511J|513J|521J|523J_V1|529J|531J|541J|549J|551J|563J|569[HJ]|573J|575J|591J|595J|597J|601J|907J|616J)|N951[0579]|N9180|N9101|N913[67]|N952[01]|N9560|N9810|N799D|[UV]9180|[UV]9815|Z(?:233V|331|667T|768G|792|81[25]|82[08]|83[12359]|85[125]|851M|(557|71[67]|798|836|861|916)BL|986DL|(232|718|828)TL|(233|353|558|717|799|837|862|899|917|963)VL|955A|95[678]|965|97[018]|98[1237]|986U|999)|Apex2|G (LTE|Lux)|Vec)[);/ ]|KIS II Max|Kis 3|Z930L'
|
11192
12262
|
device: 'smartphone'
|
11193
12263
|
models:
|
11194
12264
|
# explicit smartphone models
|
11195
12265
|
- regex: 'N799D[);/ ]'
|
11196
|
-
model: '
|
12266
|
+
model: 'Blade Eg'
|
11197
12267
|
- regex: 'N918St[);/ ]'
|
11198
12268
|
model: 'V5S'
|
11199
12269
|
- regex: 'N958St[);/ ]'
|
11200
12270
|
model: 'V5 Max'
|
11201
12271
|
- regex: 'N9101[);/ ]'
|
11202
12272
|
model: 'Imperial'
|
12273
|
+
- regex: 'N9120[);/ ]'
|
12274
|
+
model: 'Avid'
|
11203
12275
|
- regex: 'N9136[);/ ]'
|
11204
12276
|
model: 'Prestige 2'
|
11205
12277
|
- regex: 'N9137[);/ ]'
|
@@ -11207,11 +12279,11 @@ ZTE:
|
|
11207
12279
|
- regex: 'N9180[);/ ]'
|
11208
12280
|
model: 'V5'
|
11209
12281
|
- regex: 'N9510[);/ ]'
|
11210
|
-
model: '
|
12282
|
+
model: 'Warp 4G'
|
11211
12283
|
- regex: 'N9517[);/ ]'
|
11212
12284
|
model: 'Blade Force'
|
11213
12285
|
- regex: 'N9515[);/ ]'
|
11214
|
-
model: '
|
12286
|
+
model: 'Warp Sync'
|
11215
12287
|
- regex: 'N9519[);/ ]'
|
11216
12288
|
model: 'Warp 7'
|
11217
12289
|
- regex: 'N9520[);/ ]'
|
@@ -11224,8 +12296,8 @@ ZTE:
|
|
11224
12296
|
model: 'Vital'
|
11225
12297
|
- regex: 'NX40[X2][);/ ]'
|
11226
12298
|
model: 'Nubia Z5 mini'
|
11227
|
-
- regex: 'NX(
|
11228
|
-
model: 'Nubia Z5S
|
12299
|
+
- regex: 'NX(403[AE]|406E|404H)[);/ ]'
|
12300
|
+
model: 'Nubia Z5S Mini'
|
11229
12301
|
- regex: 'NX503A[);/ ]'
|
11230
12302
|
model: 'Nubia Z5S'
|
11231
12303
|
- regex: 'NX506J[);/ ]'
|
@@ -11254,8 +12326,10 @@ ZTE:
|
|
11254
12326
|
model: 'Nubia Z18S'
|
11255
12327
|
- regex: 'NX551J[);/ ]'
|
11256
12328
|
model: 'Nubia M2'
|
11257
|
-
- regex: '
|
12329
|
+
- regex: 'NX563J[);/ ]'
|
11258
12330
|
model: 'Nubia Z17'
|
12331
|
+
- regex: 'NX569H[);/ ]'
|
12332
|
+
model: 'Nubia Z17 Mini'
|
11259
12333
|
- regex: 'NX595J'
|
11260
12334
|
model: 'Nubia Z17S'
|
11261
12335
|
- regex: 'NX513J[);/ ]'
|
@@ -11279,12 +12353,34 @@ ZTE:
|
|
11279
12353
|
- regex: '[UV]9180[);/ ]'
|
11280
12354
|
model: 'V5 Red Bull'
|
11281
12355
|
- regex: '[UV]9815[);/ ]'
|
11282
|
-
model: 'Grand Memo'
|
12356
|
+
model: 'Grand Memo LTE'
|
12357
|
+
- regex: 'V779M'
|
12358
|
+
model: 'Joey Jump 2'
|
12359
|
+
- regex: 'V807'
|
12360
|
+
model: 'Blade C'
|
12361
|
+
- regex: 'V809'
|
12362
|
+
model: 'Blade C2'
|
12363
|
+
- regex: '(?:ZTE_)?V829'
|
12364
|
+
model: 'Blade G Pro'
|
12365
|
+
- regex: 'V882'
|
12366
|
+
model: 'Lord'
|
12367
|
+
- regex: 'V967S'
|
12368
|
+
model: 'Grand X2'
|
12369
|
+
- regex: 'V970M?|V987'
|
12370
|
+
model: 'Grand X'
|
12371
|
+
- regex: 'V8000'
|
12372
|
+
model: 'Nova 4'
|
12373
|
+
- regex: 'Z95[67]'
|
12374
|
+
model: 'Grand X4'
|
11283
12375
|
- regex: 'Z987'
|
11284
12376
|
model: 'Grand X Max+'
|
12377
|
+
- regex: '(?:ZTE_)?Grand[ _]Era'
|
12378
|
+
model: 'Grand Era'
|
12379
|
+
- regex: 'V788D'
|
12380
|
+
model: 'Kis Plus'
|
11285
12381
|
- regex: 'Z331[);/ ]'
|
11286
12382
|
model: 'Z331'
|
11287
|
-
- regex: 'Blade (A(310|460|465|475|520|530|602)|L110|V580)[);/ ]'
|
12383
|
+
- regex: 'Blade (A(0620|310|452|460|462|465|475|510|512|520|530|602|612|910)|L110|V0730|V0800|V580|V1000)[);/ ]'
|
11288
12384
|
model: 'Blade $1'
|
11289
12385
|
- regex: 'Blade L2 Plus[);/ ]'
|
11290
12386
|
model: 'Blade L2 Plus'
|
@@ -11292,24 +12388,36 @@ ZTE:
|
|
11292
12388
|
model: 'Blade L2'
|
11293
12389
|
- regex: 'Blade L3 Plus[);/ ]'
|
11294
12390
|
model: 'Blade L3 Plus'
|
12391
|
+
- regex: 'Blade L3 Apex[);/ ]'
|
12392
|
+
model: 'Blade L3 Apex'
|
11295
12393
|
- regex: 'Blade L3[);/ ]'
|
11296
12394
|
model: 'Blade L3'
|
12395
|
+
- regex: 'Blade L5 Plus[);/ ]'
|
12396
|
+
model: 'Blade L5 Plus'
|
11297
12397
|
- regex: 'Blade L5[);/ ]'
|
11298
12398
|
model: 'Blade L5'
|
12399
|
+
- regex: 'Blade L6[);/ ]'
|
12400
|
+
model: 'Blade L6'
|
12401
|
+
- regex: 'Blade L7A[);/ ]'
|
12402
|
+
model: 'Blade L7A'
|
12403
|
+
- regex: 'Blade L7[);/ ]'
|
12404
|
+
model: 'Blade L7'
|
11299
12405
|
- regex: 'Blade L8[);/ ]'
|
11300
12406
|
model: 'Blade L8'
|
12407
|
+
- regex: 'Blade S6 Plus[);/ ]'
|
12408
|
+
model: 'Blade S6 Plus'
|
11301
12409
|
- regex: 'Blade S6[);/ ]'
|
11302
12410
|
model: 'Blade S6'
|
12411
|
+
- regex: 'T920[);/ ]'
|
12412
|
+
model: 'Blade S7'
|
11303
12413
|
- regex: 'Blade V6 MAX[);/ ]'
|
11304
12414
|
model: 'Blade V6 Max'
|
11305
12415
|
- regex: 'Blade V6 Plus[);/ ]'
|
11306
12416
|
model: 'Blade V6 Plus'
|
11307
12417
|
- regex: 'Blade V6[);/ ]'
|
11308
12418
|
model: 'Blade V6'
|
11309
|
-
- regex: 'Blade
|
11310
|
-
model: 'Blade
|
11311
|
-
- regex: 'Blade L7[);/ ]'
|
11312
|
-
model: 'Blade L7'
|
12419
|
+
- regex: 'Blade (?:V7 Lite|V0720)[);/ ]'
|
12420
|
+
model: 'Blade V7 Lite'
|
11313
12421
|
- regex: 'Blade V7[);/ ]'
|
11314
12422
|
model: 'Blade V7'
|
11315
12423
|
- regex: 'Blade X7[);/ ]'
|
@@ -11322,6 +12430,12 @@ ZTE:
|
|
11322
12430
|
model: 'Blade V9 Vita'
|
11323
12431
|
- regex: 'Blade V9[);/ ]'
|
11324
12432
|
model: 'Blade V9'
|
12433
|
+
- regex: 'Blade V10 Vita[);/ ]'
|
12434
|
+
model: 'Blade V10 Vita'
|
12435
|
+
- regex: 'BLADE V0820[);/ ]'
|
12436
|
+
model: 'Blade V8 Lite'
|
12437
|
+
- regex: 'BLADE V0850[);/ ]'
|
12438
|
+
model: 'Blade V8 Mini'
|
11325
12439
|
- regex: '(Apex2|G (LTE|Lux)|Vec)'
|
11326
12440
|
model: 'Blade $1'
|
11327
12441
|
- regex: 'Z768G[);/ ]'
|
@@ -11336,6 +12450,8 @@ ZTE:
|
|
11336
12450
|
model: 'Blade V8 Pro'
|
11337
12451
|
- regex: 'Z839'
|
11338
12452
|
model: 'Blade Vantage'
|
12453
|
+
- regex: 'Z930L'
|
12454
|
+
model: 'Unico LTE'
|
11339
12455
|
- regex: 'Z965'
|
11340
12456
|
model: 'Blade X'
|
11341
12457
|
- regex: 'Z981'
|
@@ -11346,16 +12462,14 @@ ZTE:
|
|
11346
12462
|
model: 'Blade X Max'
|
11347
12463
|
- regex: 'Z717[BV]L[);/ ]'
|
11348
12464
|
model: 'Citrine LTE'
|
11349
|
-
- regex: 'Z233V'
|
11350
|
-
model: 'Cymbal LTE'
|
11351
12465
|
- regex: 'Z233VL'
|
11352
12466
|
model: 'Cymbal-C LTE'
|
12467
|
+
- regex: 'Z233V'
|
12468
|
+
model: 'Cymbal LTE'
|
11353
12469
|
- regex: 'Z232TL'
|
11354
12470
|
model: 'Cymbal-G LTE'
|
11355
12471
|
- regex: 'Z353VL'
|
11356
12472
|
model: 'Cymbal-T LTE'
|
11357
|
-
- regex: 'Z95[67]'
|
11358
|
-
model: 'Grand X 4'
|
11359
12473
|
- regex: 'Z718TL'
|
11360
12474
|
model: 'Jasper LTE'
|
11361
12475
|
- regex: 'KIS II Max'
|
@@ -11368,8 +12482,6 @@ ZTE:
|
|
11368
12482
|
model: 'Majesty Pro Plus LTE'
|
11369
12483
|
- regex: 'Z828TL'
|
11370
12484
|
model: 'Midnight Pro LTE'
|
11371
|
-
- regex: 'NX406E[);/ ]'
|
11372
|
-
model: 'Nubia Z5S'
|
11373
12485
|
- regex: 'Z792'
|
11374
12486
|
model: 'Fanfare'
|
11375
12487
|
- regex: 'Z812'
|
@@ -11383,7 +12495,7 @@ ZTE:
|
|
11383
12495
|
- regex: 'Z835'
|
11384
12496
|
model: 'Maven 3'
|
11385
12497
|
- regex: 'Z851[);/ ]'
|
11386
|
-
model: 'Prelude
|
12498
|
+
model: 'Prelude Plus'
|
11387
12499
|
- regex: 'Z851M'
|
11388
12500
|
model: 'Overture 3'
|
11389
12501
|
- regex: 'Z852'
|
@@ -11414,15 +12526,37 @@ ZTE:
|
|
11414
12526
|
model: 'ZMax Z970'
|
11415
12527
|
- regex: 'Z986DL'
|
11416
12528
|
model: 'MAX Blue LTE'
|
12529
|
+
- regex: 'Z992'
|
12530
|
+
model: 'Avail 2'
|
11417
12531
|
- regex: 'Z999'
|
11418
12532
|
model: 'Axon M'
|
11419
|
-
- regex: '
|
12533
|
+
- regex: 'B2016'
|
12534
|
+
model: 'Axon Mini'
|
12535
|
+
- regex: 'A2015'
|
12536
|
+
model: 'Axon Tianji'
|
12537
|
+
- regex: 'A2017[GU]?'
|
11420
12538
|
model: 'Axon 7'
|
12539
|
+
- regex: 'A2019G Pro'
|
12540
|
+
model: 'Axon Pro'
|
11421
12541
|
- regex: 'B2017G'
|
11422
12542
|
model: 'Axon 7 Mini'
|
12543
|
+
- regex: 'A2020G? Pro[);/ ]'
|
12544
|
+
model: 'Axon 10 Pro'
|
11423
12545
|
- regex: 'Z667T'
|
11424
12546
|
model: 'Zinger'
|
11425
|
-
|
12547
|
+
- regex: 'V?975|geek'
|
12548
|
+
model: 'Geek'
|
12549
|
+
- regex: 'Z716BL'
|
12550
|
+
model: 'Citrine LTE'
|
12551
|
+
- regex: 'X500'
|
12552
|
+
model: 'Score'
|
12553
|
+
- regex: 'X501'
|
12554
|
+
model: 'Groove'
|
12555
|
+
- regex: 'G-X991'
|
12556
|
+
model: 'Rio'
|
12557
|
+
- regex: 'F-450'
|
12558
|
+
model: 'Adamant'
|
12559
|
+
|
11426
12560
|
- regex: 'AxonPhone ([^;/]+) Build'
|
11427
12561
|
model: 'AxonPhone $1'
|
11428
12562
|
- regex: '([a-z0-9]+)_USA_Cricket'
|
@@ -11504,11 +12638,19 @@ MTC:
|
|
11504
12638
|
|
11505
12639
|
# MegaFon
|
11506
12640
|
MegaFon:
|
11507
|
-
regex: 'MFLoginPh'
|
12641
|
+
regex: 'MFLoginPh|(MFLogin4|MS3B|SP-A5|SP-A20i)[)\; ]'
|
11508
12642
|
device: 'smartphone'
|
11509
12643
|
models:
|
11510
12644
|
- regex: 'MFLoginPh'
|
11511
12645
|
model: 'Login+'
|
12646
|
+
- regex: 'MFLogin4'
|
12647
|
+
model: 'Login 4 LTE'
|
12648
|
+
- regex: 'MS3B'
|
12649
|
+
model: 'Optima'
|
12650
|
+
- regex: 'SP-A20i'
|
12651
|
+
model: 'Mint'
|
12652
|
+
- regex: '(SP-A5)'
|
12653
|
+
model: '$1'
|
11512
12654
|
|
11513
12655
|
# Inoi
|
11514
12656
|
Inoi:
|
@@ -11569,6 +12711,12 @@ Simbans:
|
|
11569
12711
|
- regex: 'SX2W'
|
11570
12712
|
model: 'SX2W'
|
11571
12713
|
|
12714
|
+
# MYFON
|
12715
|
+
MYFON:
|
12716
|
+
regex: 'MYPAD7s'
|
12717
|
+
device: 'tablet'
|
12718
|
+
model: 'My Pad 7s'
|
12719
|
+
|
11572
12720
|
# X-TIGI
|
11573
12721
|
X-TIGI:
|
11574
12722
|
regex: 'X[-_]TIGI'
|
@@ -11585,6 +12733,24 @@ X-TIGI:
|
|
11585
12733
|
- regex: 'X[-_]TIGI[ _-]([^/;)]+) Build'
|
11586
12734
|
model: '$1'
|
11587
12735
|
|
12736
|
+
# Xiaolajiao
|
12737
|
+
Xiaolajiao:
|
12738
|
+
regex: '(LA2-(?:L|S[N]?))[);/ ]'
|
12739
|
+
device: 'smartphone'
|
12740
|
+
model: '$1'
|
12741
|
+
|
12742
|
+
# Ritmix
|
12743
|
+
Ritmix:
|
12744
|
+
regex: 'RMD[-_](10(?:2[68]|5[89])|726)[);/ ]'
|
12745
|
+
device: 'tablet'
|
12746
|
+
model: 'RMD-$1'
|
12747
|
+
|
12748
|
+
# Ross&Moor
|
12749
|
+
'Ross&Moor':
|
12750
|
+
regex: 'RMD[-_](974R|600)[);/ ]'
|
12751
|
+
device: 'tablet'
|
12752
|
+
model: 'RMD-$1'
|
12753
|
+
|
11588
12754
|
# R-TV
|
11589
12755
|
R-TV:
|
11590
12756
|
regex: 'R-TV BOX[ _]?(MINI\+|X99|X10 PRO|[RXS]10)'
|
@@ -11618,7 +12784,17 @@ Yandex:
|
|
11618
12784
|
device: 'smartphone'
|
11619
12785
|
model: '$1'
|
11620
12786
|
|
12787
|
+
# FORME
|
12788
|
+
FORME:
|
12789
|
+
regex: 'FORME[ _-]'
|
12790
|
+
device: 'smartphone'
|
12791
|
+
models:
|
12792
|
+
- regex: 'FORME[ _-]F520[;)\ ]'
|
12793
|
+
model: 'Forever'
|
12794
|
+
- regex: 'FORME[ _-](A37|R7S)[;)\ ]'
|
12795
|
+
model: '$1'
|
12796
|
+
|
11621
12797
|
Shuttle:
|
11622
12798
|
regex: '(PNT-704[025])[;)/ ]'
|
11623
12799
|
device: 'tablet'
|
11624
|
-
model: '$1'
|
12800
|
+
model: '$1'
|