From 3a4626b5e8d2a32895faecb3c12b2015eb2f9b3b Mon Sep 17 00:00:00 2001 From: Faisal Salman Date: Wed, 28 Jun 2017 14:20:05 +0700 Subject: [PATCH] Fix #211 Distinguish Samsung Browser from Android Browser --- src/ua-parser.js | 4 +++- test/browser-test.json | 12 +++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/ua-parser.js b/src/ua-parser.js index 485905e..383f960 100644 --- a/src/ua-parser.js +++ b/src/ua-parser.js @@ -298,7 +298,9 @@ /\swv\).+(chrome)\/([\w\.]+)/i // Chrome WebView ], [[NAME, /(.+)/, '$1 WebView'], VERSION], [ - /android.+samsungbrowser\/([\w\.]+)/i, + /android.+(samsungbrowser)\/([\w\.]+)/i + ], [[NAME, /(.+g)(.+)/, '$1 $2'], VERSION], [ // Samsung Browser + /android.+version\/([\w\.]+)\s+(?:mobile\s?safari|safari)*/i // Android Browser ], [VERSION, [NAME, 'Android Browser']], [ diff --git a/test/browser-test.json b/test/browser-test.json index b28517d..a888417 100644 --- a/test/browser-test.json +++ b/test/browser-test.json @@ -64,7 +64,7 @@ "ua" : "Mozilla/5.0 (Linux; Android 5.0.2; SAMSUNG SM-G925F Build/LRX22G) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/3.0 Chrome/38.0.2125.102 Mobile Safari/537.36", "expect" : { - "name" : "Android Browser", + "name" : "Samsung Browser", "version" : "3.0", "major" : "3" } @@ -719,6 +719,16 @@ "major" : "2" } }, + { + "desc" : "Samsung Browser", + "ua" : "Mozilla/5.0 (Linux; Android 6.0.1; SAMSUNG-SM-G925A Build/MMB29K) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/4.0 Chrome/44.0.2403.133 Mobile Safari/537.36", + "expect" : + { + "name" : "Samsung Browser", + "version" : "4.0", + "major" : "4" + } + }, { "desc" : "SeaMonkey", "ua" : "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1b4pre) Gecko/20090405 SeaMonkey/2.0b1pre",