From 2a2c65fdc295a8f9e2d5c04ab813144616f45b74 Mon Sep 17 00:00:00 2001 From: Jordan Santell Date: Tue, 23 May 2017 12:04:22 -0700 Subject: [PATCH] Use JSON of dpdb from webvrrocks/webvr-polyfill-dpdb for consistency with ONLINE_DPDB_URL --- build/webvr-polyfill.js | 2513 +++++++++++++++++++++++---------------- src/dpdb/dpdb-cache.js | 1000 ---------------- src/dpdb/dpdb.js | 2 +- src/dpdb/dpdb.json | 1505 +++++++++++++++++++++++ 4 files changed, 3016 insertions(+), 2004 deletions(-) delete mode 100644 src/dpdb/dpdb-cache.js create mode 100644 src/dpdb/dpdb.json diff --git a/build/webvr-polyfill.js b/build/webvr-polyfill.js index 3022be8..f9e42ad 100644 --- a/build/webvr-polyfill.js +++ b/build/webvr-polyfill.js @@ -2880,1006 +2880,1511 @@ Distortion.prototype.approximateInverse = function(maxRadius, numSamples) { module.exports = Distortion; },{}],11:[function(_dereq_,module,exports){ -/* - * Copyright 2015 Google Inc. All Rights Reserved. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * DPDB cache. - */ -var DPDB_CACHE = { - "format": 1, - "last_updated": "2016-01-20T00:18:35Z", - "devices": [ - - { - "type": "android", - "rules": [ - { "mdmh": "asus/*/Nexus 7/*" }, - { "ua": "Nexus 7" } - ], - "dpi": [ 320.8, 323.0 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "asus/*/ASUS_Z00AD/*" }, - { "ua": "ASUS_Z00AD" } - ], - "dpi": [ 403.0, 404.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Google//Pixel XL/" }, - { "ua": "Pixel XL" } - ], - "dpi": [537.9, 533], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Google//Pixel/" }, - { "ua": "Pixel" } - ], - "dpi": [432.6, 436.7], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC6435LVW/*" }, - { "ua": "HTC6435LVW" } - ], - "dpi": [ 449.7, 443.3 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One XL/*" }, - { "ua": "HTC One XL" } - ], - "dpi": [ 315.3, 314.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "htc/*/Nexus 9/*" }, - { "ua": "Nexus 9" } - ], - "dpi": 289.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One M9/*" }, - { "ua": "HTC One M9" } - ], - "dpi": [ 442.5, 443.3 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One_M8/*" }, - { "ua": "HTC One_M8" } - ], - "dpi": [ 449.7, 447.4 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One/*" }, - { "ua": "HTC One" } - ], - "dpi": 472.8, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Huawei/*/Nexus 6P/*" }, - { "ua": "Nexus 6P" } - ], - "dpi": [ 515.1, 518.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/Nexus 5X/*" }, - { "ua": "Nexus 5X" } - ], - "dpi": [ 422.0, 419.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LGMS345/*" }, - { "ua": "LGMS345" } - ], - "dpi": [ 221.7, 219.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LG-D800/*" }, - { "ua": "LG-D800" } - ], - "dpi": [ 422.0, 424.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LG-D850/*" }, - { "ua": "LG-D850" } - ], - "dpi": [ 537.9, 541.9 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/VS985 4G/*" }, - { "ua": "VS985 4G" } - ], - "dpi": [ 537.9, 535.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/Nexus 5/*" }, - { "ua": "Nexus 5 " } - ], - "dpi": [ 442.4, 444.8 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/Nexus 4/*" }, - { "ua": "Nexus 4" } - ], - "dpi": [ 319.8, 318.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LG-P769/*" }, - { "ua": "LG-P769" } - ], - "dpi": [ 240.6, 247.5 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LGMS323/*" }, - { "ua": "LGMS323" } - ], - "dpi": [ 206.6, 204.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LGLS996/*" }, - { "ua": "LGLS996" } - ], - "dpi": [ 403.4, 401.5 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Micromax/*/4560MMX/*" }, - { "ua": "4560MMX" } - ], - "dpi": [ 240.0, 219.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Micromax/*/A250/*" }, - { "ua": "Micromax A250" } - ], - "dpi": [ 480.0, 446.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Micromax/*/Micromax AQ4501/*" }, - { "ua": "Micromax AQ4501" } - ], - "dpi": 240.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/DROID RAZR/*" }, - { "ua": "DROID RAZR" } - ], - "dpi": [ 368.1, 256.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT830C/*" }, - { "ua": "XT830C" } - ], - "dpi": [ 254.0, 255.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1021/*" }, - { "ua": "XT1021" } - ], - "dpi": [ 254.0, 256.7 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1023/*" }, - { "ua": "XT1023" } - ], - "dpi": [ 254.0, 256.7 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1028/*" }, - { "ua": "XT1028" } - ], - "dpi": [ 326.6, 327.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1034/*" }, - { "ua": "XT1034" } - ], - "dpi": [ 326.6, 328.4 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1053/*" }, - { "ua": "XT1053" } - ], - "dpi": [ 315.3, 316.1 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1562/*" }, - { "ua": "XT1562" } - ], - "dpi": [ 403.4, 402.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/Nexus 6/*" }, - { "ua": "Nexus 6 " } - ], - "dpi": [ 494.3, 489.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1063/*" }, - { "ua": "XT1063" } - ], - "dpi": [ 295.0, 296.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1064/*" }, - { "ua": "XT1064" } - ], - "dpi": [ 295.0, 295.6 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1092/*" }, - { "ua": "XT1092" } - ], - "dpi": [ 422.0, 424.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1095/*" }, - { "ua": "XT1095" } - ], - "dpi": [ 422.0, 423.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/G4/*" }, - { "ua": "Moto G (4)" } - ], - "dpi": 401.0, - "bw": 4, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OnePlus/*/A0001/*" }, - { "ua": "A0001" } - ], - "dpi": [ 403.4, 401.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OnePlus/*/ONE E1005/*" }, - { "ua": "ONE E1005" } - ], - "dpi": [ 442.4, 441.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OnePlus/*/ONE A2005/*" }, - { "ua": "ONE A2005" } - ], - "dpi": [ 391.9, 405.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OPPO/*/X909/*" }, - { "ua": "X909" } - ], - "dpi": [ 442.4, 444.1 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9082/*" }, - { "ua": "GT-I9082" } - ], - "dpi": [ 184.7, 185.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G360P/*" }, - { "ua": "SM-G360P" } - ], - "dpi": [ 196.7, 205.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/Nexus S/*" }, - { "ua": "Nexus S" } - ], - "dpi": [ 234.5, 229.8 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9300/*" }, - { "ua": "GT-I9300" } - ], - "dpi": [ 304.8, 303.9 ], - "bw": 5, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-T230NU/*" }, - { "ua": "SM-T230NU" } - ], - "dpi": 216.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SGH-T399/*" }, - { "ua": "SGH-T399" } - ], - "dpi": [ 217.7, 231.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N9005/*" }, - { "ua": "SM-N9005" } - ], - "dpi": [ 386.4, 387.0 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SAMSUNG-SM-N900A/*" }, - { "ua": "SAMSUNG-SM-N900A" } - ], - "dpi": [ 386.4, 387.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9500/*" }, - { "ua": "GT-I9500" } - ], - "dpi": [ 442.5, 443.3 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9505/*" }, - { "ua": "GT-I9505" } - ], - "dpi": 439.4, - "bw": 4, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G900F/*" }, - { "ua": "SM-G900F" } - ], - "dpi": [ 415.6, 431.6 ], - "bw": 5, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G900M/*" }, - { "ua": "SM-G900M" } - ], - "dpi": [ 415.6, 431.6 ], - "bw": 5, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G800F/*" }, - { "ua": "SM-G800F" } - ], - "dpi": 326.8, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G906S/*" }, - { "ua": "SM-G906S" } - ], - "dpi": [ 562.7, 572.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9300/*" }, - { "ua": "GT-I9300" } - ], - "dpi": [ 306.7, 304.8 ], - "bw": 5, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-T535/*" }, - { "ua": "SM-T535" } - ], - "dpi": [ 142.6, 136.4 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N920C/*" }, - { "ua": "SM-N920C" } - ], - "dpi": [ 515.1, 518.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N920W8/*" }, - { "ua": "SM-N920W8" } - ], - "dpi": [ 515.1, 518.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9300I/*" }, - { "ua": "GT-I9300I" } - ], - "dpi": [ 304.8, 305.8 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9195/*" }, - { "ua": "GT-I9195" } - ], - "dpi": [ 249.4, 256.7 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SPH-L520/*" }, - { "ua": "SPH-L520" } - ], - "dpi": [ 249.4, 255.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SAMSUNG-SGH-I717/*" }, - { "ua": "SAMSUNG-SGH-I717" } - ], - "dpi": 285.8, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SPH-D710/*" }, - { "ua": "SPH-D710" } - ], - "dpi": [ 217.7, 204.2 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-N7100/*" }, - { "ua": "GT-N7100" } - ], - "dpi": 265.1, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SCH-I605/*" }, - { "ua": "SCH-I605" } - ], - "dpi": 265.1, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/Galaxy Nexus/*" }, - { "ua": "Galaxy Nexus" } - ], - "dpi": [ 315.3, 314.2 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N910H/*" }, - { "ua": "SM-N910H" } - ], - "dpi": [ 515.1, 518.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N910C/*" }, - { "ua": "SM-N910C" } - ], - "dpi": [ 515.2, 520.2 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G130M/*" }, - { "ua": "SM-G130M" } - ], - "dpi": [ 165.9, 164.8 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G928I/*" }, - { "ua": "SM-G928I" } - ], - "dpi": [ 515.1, 518.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G920F/*" }, - { "ua": "SM-G920F" } - ], - "dpi": 580.6, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G920P/*" }, - { "ua": "SM-G920P" } - ], - "dpi": [ 522.5, 577.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G925F/*" }, - { "ua": "SM-G925F" } - ], - "dpi": 580.6, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G925V/*" }, - { "ua": "SM-G925V" } - ], - "dpi": [ 522.5, 576.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G935F/*" }, - { "ua": "SM-G935F" } - ], - "dpi": 534, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/C6903/*" }, - { "ua": "C6903" } - ], - "dpi": [ 442.5, 443.3 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/D6653/*" }, - { "ua": "D6653" } - ], - "dpi": [ 428.6, 427.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/E6653/*" }, - { "ua": "E6653" } - ], - "dpi": [ 428.6, 425.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/E6853/*" }, - { "ua": "E6853" } - ], - "dpi": [ 403.4, 401.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/SGP321/*" }, - { "ua": "SGP321" } - ], - "dpi": [ 224.7, 224.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "TCT/*/ALCATEL ONE TOUCH Fierce/*" }, - { "ua": "ALCATEL ONE TOUCH Fierce" } - ], - "dpi": [ 240.0, 247.5 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "THL/*/thl 5000/*" }, - { "ua": "thl 5000" } - ], - "dpi": [ 480.0, 443.3 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "ZTE/*/ZTE Blade L2/*" }, - { "ua": "ZTE Blade L2" } - ], - "dpi": 240.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "ios", - "rules": [ { "res": [ 640, 960 ] } ], - "dpi": [ 325.1, 328.4 ], - "bw": 4, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 640, 1136 ] } ], - "dpi": [ 317.1, 320.2 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 750, 1334 ] } ], - "dpi": 326.4, - "bw": 4, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 1242, 2208 ] } ], - "dpi": [ 453.6, 458.4 ], - "bw": 4, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 1125, 2001 ] } ], - "dpi": [ 410.9, 415.4 ], - "bw": 4, - "ac": 1000 - } -]}; - -module.exports = DPDB_CACHE; +module.exports={ + "format":1, + "last_updated":"2017-01-12T08:41:55Z", + "devices":[ + { + "type":"android", + "rules":[ + { + "mdmh":"asus/*/Nexus 7/*" + }, + { + "ua":"Nexus 7" + } + ], + "dpi":[ + 320.8, + 323 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"asus/*/ASUS_Z00AD/*" + }, + { + "ua":"ASUS_Z00AD" + } + ], + "dpi":[ + 403, + 404.6 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "Google//Pixel XL/" + }, + { + "ua": "Pixel XL" + } + ], + "dpi": [ + 537.9, + 533 + ], + "bw": 3, + "ac": 1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "Google//Pixel/" + }, + { + "ua": "Pixel" + } + ], + "dpi": [ + 432.6, + 436.7 + ], + "bw": 3, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC6435LVW/*" + }, + { + "ua":"HTC6435LVW" + } + ], + "dpi":[ + 449.7, + 443.3 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One XL/*" + }, + { + "ua":"HTC One XL" + } + ], + "dpi":[ + 315.3, + 314.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"htc/*/Nexus 9/*" + }, + { + "ua":"Nexus 9" + } + ], + "dpi":289, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One M9/*" + }, + { + "ua":"HTC One M9" + } + ], + "dpi":[ + 442.5, + 443.3 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One_M8/*" + }, + { + "ua":"HTC One_M8" + } + ], + "dpi":[ + 449.7, + 447.4 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One/*" + }, + { + "ua":"HTC One" + } + ], + "dpi":472.8, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Huawei/*/Nexus 6P/*" + }, + { + "ua":"Nexus 6P" + } + ], + "dpi":[ + 515.1, + 518 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/Nexus 5X/*" + }, + { + "ua":"Nexus 5X" + } + ], + "dpi":[ + 422, + 419.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LGMS345/*" + }, + { + "ua":"LGMS345" + } + ], + "dpi":[ + 221.7, + 219.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LG-D800/*" + }, + { + "ua":"LG-D800" + } + ], + "dpi":[ + 422, + 424.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LG-D850/*" + }, + { + "ua":"LG-D850" + } + ], + "dpi":[ + 537.9, + 541.9 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/VS985 4G/*" + }, + { + "ua":"VS985 4G" + } + ], + "dpi":[ + 537.9, + 535.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/Nexus 5/*" + }, + { + "ua":"Nexus 5 B" + } + ], + "dpi":[ + 442.4, + 444.8 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/Nexus 4/*" + }, + { + "ua":"Nexus 4" + } + ], + "dpi":[ + 319.8, + 318.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LG-P769/*" + }, + { + "ua":"LG-P769" + } + ], + "dpi":[ + 240.6, + 247.5 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LGMS323/*" + }, + { + "ua":"LGMS323" + } + ], + "dpi":[ + 206.6, + 204.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LGLS996/*" + }, + { + "ua":"LGLS996" + } + ], + "dpi":[ + 403.4, + 401.5 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Micromax/*/4560MMX/*" + }, + { + "ua":"4560MMX" + } + ], + "dpi":[ + 240, + 219.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Micromax/*/A250/*" + }, + { + "ua":"Micromax A250" + } + ], + "dpi":[ + 480, + 446.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Micromax/*/Micromax AQ4501/*" + }, + { + "ua":"Micromax AQ4501" + } + ], + "dpi":240, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/DROID RAZR/*" + }, + { + "ua":"DROID RAZR" + } + ], + "dpi":[ + 368.1, + 256.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT830C/*" + }, + { + "ua":"XT830C" + } + ], + "dpi":[ + 254, + 255.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1021/*" + }, + { + "ua":"XT1021" + } + ], + "dpi":[ + 254, + 256.7 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1023/*" + }, + { + "ua":"XT1023" + } + ], + "dpi":[ + 254, + 256.7 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1028/*" + }, + { + "ua":"XT1028" + } + ], + "dpi":[ + 326.6, + 327.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1034/*" + }, + { + "ua":"XT1034" + } + ], + "dpi":[ + 326.6, + 328.4 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1053/*" + }, + { + "ua":"XT1053" + } + ], + "dpi":[ + 315.3, + 316.1 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1562/*" + }, + { + "ua":"XT1562" + } + ], + "dpi":[ + 403.4, + 402.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/Nexus 6/*" + }, + { + "ua":"Nexus 6 B" + } + ], + "dpi":[ + 494.3, + 489.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1063/*" + }, + { + "ua":"XT1063" + } + ], + "dpi":[ + 295, + 296.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1064/*" + }, + { + "ua":"XT1064" + } + ], + "dpi":[ + 295, + 295.6 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1092/*" + }, + { + "ua":"XT1092" + } + ], + "dpi":[ + 422, + 424.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1095/*" + }, + { + "ua":"XT1095" + } + ], + "dpi":[ + 422, + 423.4 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "motorola/*/G4/*" + }, + { + "ua": "Moto G (4)" + } + ], + "dpi": 401.0, + "bw": 4, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OnePlus/*/A0001/*" + }, + { + "ua":"A0001" + } + ], + "dpi":[ + 403.4, + 401 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OnePlus/*/ONE E1005/*" + }, + { + "ua":"ONE E1005" + } + ], + "dpi":[ + 442.4, + 441.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OnePlus/*/ONE A2005/*" + }, + { + "ua":"ONE A2005" + } + ], + "dpi":[ + 391.9, + 405.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OPPO/*/X909/*" + }, + { + "ua":"X909" + } + ], + "dpi":[ + 442.4, + 444.1 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9082/*" + }, + { + "ua":"GT-I9082" + } + ], + "dpi":[ + 184.7, + 185.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G360P/*" + }, + { + "ua":"SM-G360P" + } + ], + "dpi":[ + 196.7, + 205.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/Nexus S/*" + }, + { + "ua":"Nexus S" + } + ], + "dpi":[ + 234.5, + 229.8 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9300/*" + }, + { + "ua":"GT-I9300" + } + ], + "dpi":[ + 304.8, + 303.9 + ], + "bw":5, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-T230NU/*" + }, + { + "ua":"SM-T230NU" + } + ], + "dpi":216, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SGH-T399/*" + }, + { + "ua":"SGH-T399" + } + ], + "dpi":[ + 217.7, + 231.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N9005/*" + }, + { + "ua":"SM-N9005" + } + ], + "dpi":[ + 386.4, + 387 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SAMSUNG-SM-N900A/*" + }, + { + "ua":"SAMSUNG-SM-N900A" + } + ], + "dpi":[ + 386.4, + 387.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9500/*" + }, + { + "ua":"GT-I9500" + } + ], + "dpi":[ + 442.5, + 443.3 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9505/*" + }, + { + "ua":"GT-I9505" + } + ], + "dpi":439.4, + "bw":4, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G900F/*" + }, + { + "ua":"SM-G900F" + } + ], + "dpi":[ + 415.6, + 431.6 + ], + "bw":5, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G900M/*" + }, + { + "ua":"SM-G900M" + } + ], + "dpi":[ + 415.6, + 431.6 + ], + "bw":5, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G800F/*" + }, + { + "ua":"SM-G800F" + } + ], + "dpi":326.8, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G906S/*" + }, + { + "ua":"SM-G906S" + } + ], + "dpi":[ + 562.7, + 572.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9300/*" + }, + { + "ua":"GT-I9300" + } + ], + "dpi":[ + 306.7, + 304.8 + ], + "bw":5, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-T535/*" + }, + { + "ua":"SM-T535" + } + ], + "dpi":[ + 142.6, + 136.4 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N920C/*" + }, + { + "ua":"SM-N920C" + } + ], + "dpi":[ + 515.1, + 518.4 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "samsung/*/SM-N920W8/*" + }, + { + "ua": "SM-N920W8" + } + ], + "dpi": [ + 515.1, + 518.4 + ], + "bw": 3, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9300I/*" + }, + { + "ua":"GT-I9300I" + } + ], + "dpi":[ + 304.8, + 305.8 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9195/*" + }, + { + "ua":"GT-I9195" + } + ], + "dpi":[ + 249.4, + 256.7 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SPH-L520/*" + }, + { + "ua":"SPH-L520" + } + ], + "dpi":[ + 249.4, + 255.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SAMSUNG-SGH-I717/*" + }, + { + "ua":"SAMSUNG-SGH-I717" + } + ], + "dpi":285.8, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SPH-D710/*" + }, + { + "ua":"SPH-D710" + } + ], + "dpi":[ + 217.7, + 204.2 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-N7100/*" + }, + { + "ua":"GT-N7100" + } + ], + "dpi":265.1, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SCH-I605/*" + }, + { + "ua":"SCH-I605" + } + ], + "dpi":265.1, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/Galaxy Nexus/*" + }, + { + "ua":"Galaxy Nexus" + } + ], + "dpi":[ + 315.3, + 314.2 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N910H/*" + }, + { + "ua":"SM-N910H" + } + ], + "dpi":[ + 515.1, + 518 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N910C/*" + }, + { + "ua":"SM-N910C" + } + ], + "dpi":[ + 515.2, + 520.2 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G130M/*" + }, + { + "ua":"SM-G130M" + } + ], + "dpi":[ + 165.9, + 164.8 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G928I/*" + }, + { + "ua":"SM-G928I" + } + ], + "dpi":[ + 515.1, + 518.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G920F/*" + }, + { + "ua":"SM-G920F" + } + ], + "dpi":580.6, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G920P/*" + }, + { + "ua":"SM-G920P" + } + ], + "dpi":[ + 522.5, + 577 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G925F/*" + }, + { + "ua":"SM-G925F" + } + ], + "dpi":580.6, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G925V/*" + }, + { + "ua":"SM-G925V" + } + ], + "dpi":[ + 522.5, + 576.6 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "samsung/*/SM-G930F/*" + }, + { + "ua": "SM-G930F" + } + ], + "dpi": 576.6, + "bw": 3, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G935F/*" + }, + { + "ua":"SM-G935F" + } + ], + "dpi":533, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/C6903/*" + }, + { + "ua":"C6903" + } + ], + "dpi":[ + 442.5, + 443.3 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/D6653/*" + }, + { + "ua":"D6653" + } + ], + "dpi":[ + 428.6, + 427.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/E6653/*" + }, + { + "ua":"E6653" + } + ], + "dpi":[ + 428.6, + 425.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/E6853/*" + }, + { + "ua":"E6853" + } + ], + "dpi":[ + 403.4, + 401.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/SGP321/*" + }, + { + "ua":"SGP321" + } + ], + "dpi":[ + 224.7, + 224.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"TCT/*/ALCATEL ONE TOUCH Fierce/*" + }, + { + "ua":"ALCATEL ONE TOUCH Fierce" + } + ], + "dpi":[ + 240, + 247.5 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"THL/*/thl 5000/*" + }, + { + "ua":"thl 5000" + } + ], + "dpi":[ + 480, + 443.3 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"ZTE/*/ZTE Blade L2/*" + }, + { + "ua":"ZTE Blade L2" + } + ], + "dpi":240, + "bw":3, + "ac":500 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 640, + 960 + ] + } + ], + "dpi":[ + 325.1, + 328.4 + ], + "bw":4, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 640, + 1136 + ] + } + ], + "dpi":[ + 317.1, + 320.2 + ], + "bw":3, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 750, + 1334 + ] + } + ], + "dpi":326.4, + "bw":4, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 1242, + 2208 + ] + } + ], + "dpi":[ + 453.6, + 458.4 + ], + "bw":4, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 1125, + 2001 + ] + } + ], + "dpi":[ + 410.9, + 415.4 + ], + "bw":4, + "ac":1000 + } + ] +} },{}],12:[function(_dereq_,module,exports){ /* @@ -3899,11 +4404,13 @@ module.exports = DPDB_CACHE; // Offline cache of the DPDB, to be used until we load the online one (and // as a fallback in case we can't load the online one). -var DPDB_CACHE = _dereq_('./dpdb-cache.js'); +var DPDB_CACHE = _dereq_('./dpdb-cache.json'); var Util = _dereq_('../util.js'); +window.DPDB_CACHE = DPDB_CACHE; // Online DPDB URL. -var ONLINE_DPDB_URL = 'https://storage.googleapis.com/cardboard-dpdb/dpdb.json'; +var ONLINE_DPDB_URL = + 'https://dpdb.webvr.rocks/dpdb.json'; /** * Calculates device parameters based on the DPDB (Device Parameter Database). @@ -4062,7 +4569,7 @@ function DeviceParams(params) { module.exports = Dpdb; -},{"../util.js":22,"./dpdb-cache.js":11}],13:[function(_dereq_,module,exports){ +},{"../util.js":22,"./dpdb-cache.json":11}],13:[function(_dereq_,module,exports){ /* * Copyright 2015 Google Inc. All Rights Reserved. * Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/src/dpdb/dpdb-cache.js b/src/dpdb/dpdb-cache.js deleted file mode 100644 index d59c894..0000000 --- a/src/dpdb/dpdb-cache.js +++ /dev/null @@ -1,1000 +0,0 @@ -/* - * Copyright 2015 Google Inc. All Rights Reserved. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * DPDB cache. - */ -var DPDB_CACHE = { - "format": 1, - "last_updated": "2016-01-20T00:18:35Z", - "devices": [ - - { - "type": "android", - "rules": [ - { "mdmh": "asus/*/Nexus 7/*" }, - { "ua": "Nexus 7" } - ], - "dpi": [ 320.8, 323.0 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "asus/*/ASUS_Z00AD/*" }, - { "ua": "ASUS_Z00AD" } - ], - "dpi": [ 403.0, 404.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Google//Pixel XL/" }, - { "ua": "Pixel XL" } - ], - "dpi": [537.9, 533], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Google//Pixel/" }, - { "ua": "Pixel" } - ], - "dpi": [432.6, 436.7], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC6435LVW/*" }, - { "ua": "HTC6435LVW" } - ], - "dpi": [ 449.7, 443.3 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One XL/*" }, - { "ua": "HTC One XL" } - ], - "dpi": [ 315.3, 314.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "htc/*/Nexus 9/*" }, - { "ua": "Nexus 9" } - ], - "dpi": 289.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One M9/*" }, - { "ua": "HTC One M9" } - ], - "dpi": [ 442.5, 443.3 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One_M8/*" }, - { "ua": "HTC One_M8" } - ], - "dpi": [ 449.7, 447.4 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "HTC/*/HTC One/*" }, - { "ua": "HTC One" } - ], - "dpi": 472.8, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Huawei/*/Nexus 6P/*" }, - { "ua": "Nexus 6P" } - ], - "dpi": [ 515.1, 518.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/Nexus 5X/*" }, - { "ua": "Nexus 5X" } - ], - "dpi": [ 422.0, 419.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LGMS345/*" }, - { "ua": "LGMS345" } - ], - "dpi": [ 221.7, 219.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LG-D800/*" }, - { "ua": "LG-D800" } - ], - "dpi": [ 422.0, 424.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LG-D850/*" }, - { "ua": "LG-D850" } - ], - "dpi": [ 537.9, 541.9 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/VS985 4G/*" }, - { "ua": "VS985 4G" } - ], - "dpi": [ 537.9, 535.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/Nexus 5/*" }, - { "ua": "Nexus 5 " } - ], - "dpi": [ 442.4, 444.8 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/Nexus 4/*" }, - { "ua": "Nexus 4" } - ], - "dpi": [ 319.8, 318.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LG-P769/*" }, - { "ua": "LG-P769" } - ], - "dpi": [ 240.6, 247.5 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LGMS323/*" }, - { "ua": "LGMS323" } - ], - "dpi": [ 206.6, 204.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "LGE/*/LGLS996/*" }, - { "ua": "LGLS996" } - ], - "dpi": [ 403.4, 401.5 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Micromax/*/4560MMX/*" }, - { "ua": "4560MMX" } - ], - "dpi": [ 240.0, 219.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Micromax/*/A250/*" }, - { "ua": "Micromax A250" } - ], - "dpi": [ 480.0, 446.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Micromax/*/Micromax AQ4501/*" }, - { "ua": "Micromax AQ4501" } - ], - "dpi": 240.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/DROID RAZR/*" }, - { "ua": "DROID RAZR" } - ], - "dpi": [ 368.1, 256.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT830C/*" }, - { "ua": "XT830C" } - ], - "dpi": [ 254.0, 255.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1021/*" }, - { "ua": "XT1021" } - ], - "dpi": [ 254.0, 256.7 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1023/*" }, - { "ua": "XT1023" } - ], - "dpi": [ 254.0, 256.7 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1028/*" }, - { "ua": "XT1028" } - ], - "dpi": [ 326.6, 327.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1034/*" }, - { "ua": "XT1034" } - ], - "dpi": [ 326.6, 328.4 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1053/*" }, - { "ua": "XT1053" } - ], - "dpi": [ 315.3, 316.1 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1562/*" }, - { "ua": "XT1562" } - ], - "dpi": [ 403.4, 402.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/Nexus 6/*" }, - { "ua": "Nexus 6 " } - ], - "dpi": [ 494.3, 489.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1063/*" }, - { "ua": "XT1063" } - ], - "dpi": [ 295.0, 296.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1064/*" }, - { "ua": "XT1064" } - ], - "dpi": [ 295.0, 295.6 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1092/*" }, - { "ua": "XT1092" } - ], - "dpi": [ 422.0, 424.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/XT1095/*" }, - { "ua": "XT1095" } - ], - "dpi": [ 422.0, 423.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "motorola/*/G4/*" }, - { "ua": "Moto G (4)" } - ], - "dpi": 401.0, - "bw": 4, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OnePlus/*/A0001/*" }, - { "ua": "A0001" } - ], - "dpi": [ 403.4, 401.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OnePlus/*/ONE E1005/*" }, - { "ua": "ONE E1005" } - ], - "dpi": [ 442.4, 441.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OnePlus/*/ONE A2005/*" }, - { "ua": "ONE A2005" } - ], - "dpi": [ 391.9, 405.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "OPPO/*/X909/*" }, - { "ua": "X909" } - ], - "dpi": [ 442.4, 444.1 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9082/*" }, - { "ua": "GT-I9082" } - ], - "dpi": [ 184.7, 185.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G360P/*" }, - { "ua": "SM-G360P" } - ], - "dpi": [ 196.7, 205.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/Nexus S/*" }, - { "ua": "Nexus S" } - ], - "dpi": [ 234.5, 229.8 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9300/*" }, - { "ua": "GT-I9300" } - ], - "dpi": [ 304.8, 303.9 ], - "bw": 5, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-T230NU/*" }, - { "ua": "SM-T230NU" } - ], - "dpi": 216.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SGH-T399/*" }, - { "ua": "SGH-T399" } - ], - "dpi": [ 217.7, 231.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N9005/*" }, - { "ua": "SM-N9005" } - ], - "dpi": [ 386.4, 387.0 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SAMSUNG-SM-N900A/*" }, - { "ua": "SAMSUNG-SM-N900A" } - ], - "dpi": [ 386.4, 387.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9500/*" }, - { "ua": "GT-I9500" } - ], - "dpi": [ 442.5, 443.3 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9505/*" }, - { "ua": "GT-I9505" } - ], - "dpi": 439.4, - "bw": 4, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G900F/*" }, - { "ua": "SM-G900F" } - ], - "dpi": [ 415.6, 431.6 ], - "bw": 5, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G900M/*" }, - { "ua": "SM-G900M" } - ], - "dpi": [ 415.6, 431.6 ], - "bw": 5, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G800F/*" }, - { "ua": "SM-G800F" } - ], - "dpi": 326.8, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G906S/*" }, - { "ua": "SM-G906S" } - ], - "dpi": [ 562.7, 572.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9300/*" }, - { "ua": "GT-I9300" } - ], - "dpi": [ 306.7, 304.8 ], - "bw": 5, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-T535/*" }, - { "ua": "SM-T535" } - ], - "dpi": [ 142.6, 136.4 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N920C/*" }, - { "ua": "SM-N920C" } - ], - "dpi": [ 515.1, 518.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N920W8/*" }, - { "ua": "SM-N920W8" } - ], - "dpi": [ 515.1, 518.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9300I/*" }, - { "ua": "GT-I9300I" } - ], - "dpi": [ 304.8, 305.8 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-I9195/*" }, - { "ua": "GT-I9195" } - ], - "dpi": [ 249.4, 256.7 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SPH-L520/*" }, - { "ua": "SPH-L520" } - ], - "dpi": [ 249.4, 255.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SAMSUNG-SGH-I717/*" }, - { "ua": "SAMSUNG-SGH-I717" } - ], - "dpi": 285.8, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SPH-D710/*" }, - { "ua": "SPH-D710" } - ], - "dpi": [ 217.7, 204.2 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/GT-N7100/*" }, - { "ua": "GT-N7100" } - ], - "dpi": 265.1, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SCH-I605/*" }, - { "ua": "SCH-I605" } - ], - "dpi": 265.1, - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/Galaxy Nexus/*" }, - { "ua": "Galaxy Nexus" } - ], - "dpi": [ 315.3, 314.2 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N910H/*" }, - { "ua": "SM-N910H" } - ], - "dpi": [ 515.1, 518.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-N910C/*" }, - { "ua": "SM-N910C" } - ], - "dpi": [ 515.2, 520.2 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G130M/*" }, - { "ua": "SM-G130M" } - ], - "dpi": [ 165.9, 164.8 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G928I/*" }, - { "ua": "SM-G928I" } - ], - "dpi": [ 515.1, 518.4 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G920F/*" }, - { "ua": "SM-G920F" } - ], - "dpi": 580.6, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G920P/*" }, - { "ua": "SM-G920P" } - ], - "dpi": [ 522.5, 577.0 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G925F/*" }, - { "ua": "SM-G925F" } - ], - "dpi": 580.6, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G925V/*" }, - { "ua": "SM-G925V" } - ], - "dpi": [ 522.5, 576.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "samsung/*/SM-G935F/*" }, - { "ua": "SM-G935F" } - ], - "dpi": 534, - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/C6903/*" }, - { "ua": "C6903" } - ], - "dpi": [ 442.5, 443.3 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/D6653/*" }, - { "ua": "D6653" } - ], - "dpi": [ 428.6, 427.6 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/E6653/*" }, - { "ua": "E6653" } - ], - "dpi": [ 428.6, 425.7 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/E6853/*" }, - { "ua": "E6853" } - ], - "dpi": [ 403.4, 401.9 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "Sony/*/SGP321/*" }, - { "ua": "SGP321" } - ], - "dpi": [ 224.7, 224.1 ], - "bw": 3, - "ac": 500 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "TCT/*/ALCATEL ONE TOUCH Fierce/*" }, - { "ua": "ALCATEL ONE TOUCH Fierce" } - ], - "dpi": [ 240.0, 247.5 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "THL/*/thl 5000/*" }, - { "ua": "thl 5000" } - ], - "dpi": [ 480.0, 443.3 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "android", - "rules": [ - { "mdmh": "ZTE/*/ZTE Blade L2/*" }, - { "ua": "ZTE Blade L2" } - ], - "dpi": 240.0, - "bw": 3, - "ac": 500 - }, - - { - "type": "ios", - "rules": [ { "res": [ 640, 960 ] } ], - "dpi": [ 325.1, 328.4 ], - "bw": 4, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 640, 1136 ] } ], - "dpi": [ 317.1, 320.2 ], - "bw": 3, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 750, 1334 ] } ], - "dpi": 326.4, - "bw": 4, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 1242, 2208 ] } ], - "dpi": [ 453.6, 458.4 ], - "bw": 4, - "ac": 1000 - }, - - { - "type": "ios", - "rules": [ { "res": [ 1125, 2001 ] } ], - "dpi": [ 410.9, 415.4 ], - "bw": 4, - "ac": 1000 - } -]}; - -module.exports = DPDB_CACHE; diff --git a/src/dpdb/dpdb.js b/src/dpdb/dpdb.js index f1f1466..fa49269 100644 --- a/src/dpdb/dpdb.js +++ b/src/dpdb/dpdb.js @@ -15,7 +15,7 @@ // Offline cache of the DPDB, to be used until we load the online one (and // as a fallback in case we can't load the online one). -var DPDB_CACHE = require('./dpdb-cache.js'); +var DPDB_CACHE = require('./dpdb.json'); var Util = require('../util.js'); // Online DPDB URL. diff --git a/src/dpdb/dpdb.json b/src/dpdb/dpdb.json new file mode 100644 index 0000000..9096d5b --- /dev/null +++ b/src/dpdb/dpdb.json @@ -0,0 +1,1505 @@ +{ + "format":1, + "last_updated":"2017-01-12T08:41:55Z", + "devices":[ + { + "type":"android", + "rules":[ + { + "mdmh":"asus/*/Nexus 7/*" + }, + { + "ua":"Nexus 7" + } + ], + "dpi":[ + 320.8, + 323 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"asus/*/ASUS_Z00AD/*" + }, + { + "ua":"ASUS_Z00AD" + } + ], + "dpi":[ + 403, + 404.6 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "Google//Pixel XL/" + }, + { + "ua": "Pixel XL" + } + ], + "dpi": [ + 537.9, + 533 + ], + "bw": 3, + "ac": 1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "Google//Pixel/" + }, + { + "ua": "Pixel" + } + ], + "dpi": [ + 432.6, + 436.7 + ], + "bw": 3, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC6435LVW/*" + }, + { + "ua":"HTC6435LVW" + } + ], + "dpi":[ + 449.7, + 443.3 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One XL/*" + }, + { + "ua":"HTC One XL" + } + ], + "dpi":[ + 315.3, + 314.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"htc/*/Nexus 9/*" + }, + { + "ua":"Nexus 9" + } + ], + "dpi":289, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One M9/*" + }, + { + "ua":"HTC One M9" + } + ], + "dpi":[ + 442.5, + 443.3 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One_M8/*" + }, + { + "ua":"HTC One_M8" + } + ], + "dpi":[ + 449.7, + 447.4 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"HTC/*/HTC One/*" + }, + { + "ua":"HTC One" + } + ], + "dpi":472.8, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Huawei/*/Nexus 6P/*" + }, + { + "ua":"Nexus 6P" + } + ], + "dpi":[ + 515.1, + 518 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/Nexus 5X/*" + }, + { + "ua":"Nexus 5X" + } + ], + "dpi":[ + 422, + 419.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LGMS345/*" + }, + { + "ua":"LGMS345" + } + ], + "dpi":[ + 221.7, + 219.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LG-D800/*" + }, + { + "ua":"LG-D800" + } + ], + "dpi":[ + 422, + 424.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LG-D850/*" + }, + { + "ua":"LG-D850" + } + ], + "dpi":[ + 537.9, + 541.9 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/VS985 4G/*" + }, + { + "ua":"VS985 4G" + } + ], + "dpi":[ + 537.9, + 535.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/Nexus 5/*" + }, + { + "ua":"Nexus 5 B" + } + ], + "dpi":[ + 442.4, + 444.8 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/Nexus 4/*" + }, + { + "ua":"Nexus 4" + } + ], + "dpi":[ + 319.8, + 318.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LG-P769/*" + }, + { + "ua":"LG-P769" + } + ], + "dpi":[ + 240.6, + 247.5 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LGMS323/*" + }, + { + "ua":"LGMS323" + } + ], + "dpi":[ + 206.6, + 204.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"LGE/*/LGLS996/*" + }, + { + "ua":"LGLS996" + } + ], + "dpi":[ + 403.4, + 401.5 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Micromax/*/4560MMX/*" + }, + { + "ua":"4560MMX" + } + ], + "dpi":[ + 240, + 219.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Micromax/*/A250/*" + }, + { + "ua":"Micromax A250" + } + ], + "dpi":[ + 480, + 446.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Micromax/*/Micromax AQ4501/*" + }, + { + "ua":"Micromax AQ4501" + } + ], + "dpi":240, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/DROID RAZR/*" + }, + { + "ua":"DROID RAZR" + } + ], + "dpi":[ + 368.1, + 256.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT830C/*" + }, + { + "ua":"XT830C" + } + ], + "dpi":[ + 254, + 255.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1021/*" + }, + { + "ua":"XT1021" + } + ], + "dpi":[ + 254, + 256.7 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1023/*" + }, + { + "ua":"XT1023" + } + ], + "dpi":[ + 254, + 256.7 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1028/*" + }, + { + "ua":"XT1028" + } + ], + "dpi":[ + 326.6, + 327.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1034/*" + }, + { + "ua":"XT1034" + } + ], + "dpi":[ + 326.6, + 328.4 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1053/*" + }, + { + "ua":"XT1053" + } + ], + "dpi":[ + 315.3, + 316.1 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1562/*" + }, + { + "ua":"XT1562" + } + ], + "dpi":[ + 403.4, + 402.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/Nexus 6/*" + }, + { + "ua":"Nexus 6 B" + } + ], + "dpi":[ + 494.3, + 489.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1063/*" + }, + { + "ua":"XT1063" + } + ], + "dpi":[ + 295, + 296.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1064/*" + }, + { + "ua":"XT1064" + } + ], + "dpi":[ + 295, + 295.6 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1092/*" + }, + { + "ua":"XT1092" + } + ], + "dpi":[ + 422, + 424.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"motorola/*/XT1095/*" + }, + { + "ua":"XT1095" + } + ], + "dpi":[ + 422, + 423.4 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "motorola/*/G4/*" + }, + { + "ua": "Moto G (4)" + } + ], + "dpi": 401.0, + "bw": 4, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OnePlus/*/A0001/*" + }, + { + "ua":"A0001" + } + ], + "dpi":[ + 403.4, + 401 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OnePlus/*/ONE E1005/*" + }, + { + "ua":"ONE E1005" + } + ], + "dpi":[ + 442.4, + 441.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OnePlus/*/ONE A2005/*" + }, + { + "ua":"ONE A2005" + } + ], + "dpi":[ + 391.9, + 405.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"OPPO/*/X909/*" + }, + { + "ua":"X909" + } + ], + "dpi":[ + 442.4, + 444.1 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9082/*" + }, + { + "ua":"GT-I9082" + } + ], + "dpi":[ + 184.7, + 185.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G360P/*" + }, + { + "ua":"SM-G360P" + } + ], + "dpi":[ + 196.7, + 205.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/Nexus S/*" + }, + { + "ua":"Nexus S" + } + ], + "dpi":[ + 234.5, + 229.8 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9300/*" + }, + { + "ua":"GT-I9300" + } + ], + "dpi":[ + 304.8, + 303.9 + ], + "bw":5, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-T230NU/*" + }, + { + "ua":"SM-T230NU" + } + ], + "dpi":216, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SGH-T399/*" + }, + { + "ua":"SGH-T399" + } + ], + "dpi":[ + 217.7, + 231.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N9005/*" + }, + { + "ua":"SM-N9005" + } + ], + "dpi":[ + 386.4, + 387 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SAMSUNG-SM-N900A/*" + }, + { + "ua":"SAMSUNG-SM-N900A" + } + ], + "dpi":[ + 386.4, + 387.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9500/*" + }, + { + "ua":"GT-I9500" + } + ], + "dpi":[ + 442.5, + 443.3 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9505/*" + }, + { + "ua":"GT-I9505" + } + ], + "dpi":439.4, + "bw":4, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G900F/*" + }, + { + "ua":"SM-G900F" + } + ], + "dpi":[ + 415.6, + 431.6 + ], + "bw":5, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G900M/*" + }, + { + "ua":"SM-G900M" + } + ], + "dpi":[ + 415.6, + 431.6 + ], + "bw":5, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G800F/*" + }, + { + "ua":"SM-G800F" + } + ], + "dpi":326.8, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G906S/*" + }, + { + "ua":"SM-G906S" + } + ], + "dpi":[ + 562.7, + 572.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9300/*" + }, + { + "ua":"GT-I9300" + } + ], + "dpi":[ + 306.7, + 304.8 + ], + "bw":5, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-T535/*" + }, + { + "ua":"SM-T535" + } + ], + "dpi":[ + 142.6, + 136.4 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N920C/*" + }, + { + "ua":"SM-N920C" + } + ], + "dpi":[ + 515.1, + 518.4 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "samsung/*/SM-N920W8/*" + }, + { + "ua": "SM-N920W8" + } + ], + "dpi": [ + 515.1, + 518.4 + ], + "bw": 3, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9300I/*" + }, + { + "ua":"GT-I9300I" + } + ], + "dpi":[ + 304.8, + 305.8 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-I9195/*" + }, + { + "ua":"GT-I9195" + } + ], + "dpi":[ + 249.4, + 256.7 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SPH-L520/*" + }, + { + "ua":"SPH-L520" + } + ], + "dpi":[ + 249.4, + 255.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SAMSUNG-SGH-I717/*" + }, + { + "ua":"SAMSUNG-SGH-I717" + } + ], + "dpi":285.8, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SPH-D710/*" + }, + { + "ua":"SPH-D710" + } + ], + "dpi":[ + 217.7, + 204.2 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/GT-N7100/*" + }, + { + "ua":"GT-N7100" + } + ], + "dpi":265.1, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SCH-I605/*" + }, + { + "ua":"SCH-I605" + } + ], + "dpi":265.1, + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/Galaxy Nexus/*" + }, + { + "ua":"Galaxy Nexus" + } + ], + "dpi":[ + 315.3, + 314.2 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N910H/*" + }, + { + "ua":"SM-N910H" + } + ], + "dpi":[ + 515.1, + 518 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-N910C/*" + }, + { + "ua":"SM-N910C" + } + ], + "dpi":[ + 515.2, + 520.2 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G130M/*" + }, + { + "ua":"SM-G130M" + } + ], + "dpi":[ + 165.9, + 164.8 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G928I/*" + }, + { + "ua":"SM-G928I" + } + ], + "dpi":[ + 515.1, + 518.4 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G920F/*" + }, + { + "ua":"SM-G920F" + } + ], + "dpi":580.6, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G920P/*" + }, + { + "ua":"SM-G920P" + } + ], + "dpi":[ + 522.5, + 577 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G925F/*" + }, + { + "ua":"SM-G925F" + } + ], + "dpi":580.6, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G925V/*" + }, + { + "ua":"SM-G925V" + } + ], + "dpi":[ + 522.5, + 576.6 + ], + "bw":3, + "ac":1000 + }, + { + "type": "android", + "rules": [ + { + "mdmh": "samsung/*/SM-G930F/*" + }, + { + "ua": "SM-G930F" + } + ], + "dpi": 576.6, + "bw": 3, + "ac": 1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"samsung/*/SM-G935F/*" + }, + { + "ua":"SM-G935F" + } + ], + "dpi":533, + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/C6903/*" + }, + { + "ua":"C6903" + } + ], + "dpi":[ + 442.5, + 443.3 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/D6653/*" + }, + { + "ua":"D6653" + } + ], + "dpi":[ + 428.6, + 427.6 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/E6653/*" + }, + { + "ua":"E6653" + } + ], + "dpi":[ + 428.6, + 425.7 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/E6853/*" + }, + { + "ua":"E6853" + } + ], + "dpi":[ + 403.4, + 401.9 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"Sony/*/SGP321/*" + }, + { + "ua":"SGP321" + } + ], + "dpi":[ + 224.7, + 224.1 + ], + "bw":3, + "ac":500 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"TCT/*/ALCATEL ONE TOUCH Fierce/*" + }, + { + "ua":"ALCATEL ONE TOUCH Fierce" + } + ], + "dpi":[ + 240, + 247.5 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"THL/*/thl 5000/*" + }, + { + "ua":"thl 5000" + } + ], + "dpi":[ + 480, + 443.3 + ], + "bw":3, + "ac":1000 + }, + { + "type":"android", + "rules":[ + { + "mdmh":"ZTE/*/ZTE Blade L2/*" + }, + { + "ua":"ZTE Blade L2" + } + ], + "dpi":240, + "bw":3, + "ac":500 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 640, + 960 + ] + } + ], + "dpi":[ + 325.1, + 328.4 + ], + "bw":4, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 640, + 1136 + ] + } + ], + "dpi":[ + 317.1, + 320.2 + ], + "bw":3, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 750, + 1334 + ] + } + ], + "dpi":326.4, + "bw":4, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 1242, + 2208 + ] + } + ], + "dpi":[ + 453.6, + 458.4 + ], + "bw":4, + "ac":1000 + }, + { + "type":"ios", + "rules":[ + { + "res":[ + 1125, + 2001 + ] + } + ], + "dpi":[ + 410.9, + 415.4 + ], + "bw":4, + "ac":1000 + } + ] +}