Last active
August 29, 2015 14:18
-
-
Save lotterfriends/c847dc13f6667b9f58e9 to your computer and use it in GitHub Desktop.
Flowplayer user agent test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// run with rhino, io.js or node | |
function parseIpadVersion(UA) { | |
var e = /Version\/(\d\.\d)/.exec(UA); | |
if (e && e.length > 1) { | |
return parseFloat(e[1], 10); | |
} | |
return 0; | |
} | |
function test(name, UA) { | |
var IS_IE = true || /Trident\/7/.test(UA), | |
IS_IPAD = /iPad|MeeGo/.test(UA) && !/CriOS/.test(UA), | |
IS_IPAD_CHROME = /iPad/.test(UA) && /CriOS/.test(UA), | |
IS_IPHONE = /iP(hone|od)/i.test(UA) && !/iPad/.test(UA), | |
IS_ANDROID = /Android/.test(UA) && !/Firefox/.test(UA), | |
IS_ANDROID_FIREFOX = /Android/.test(UA) && /Firefox/.test(UA), | |
IS_SILK = /Silk/.test(UA), | |
IS_WP = /IEMobile/.test(UA), | |
WP_VER = IS_WP ? parseFloat(/Windows\ Phone\ (\d+\.\d+)/.exec(UA)[1], 10) : 0, | |
IE_MOBILE_VER = IS_WP ? parseFloat(/IEMobile\/(\d+\.\d+)/.exec(UA)[1], 10) : 0, | |
IPAD_VER = IS_IPAD ? parseIpadVersion(UA) : 0, | |
ANDROID_VER = IS_ANDROID ? parseFloat(/Android\ (\d\.\d)/.exec(UA)[1], 10) : 0; | |
// console.log('IS_IE', IS_IE); | |
// console.log('IS_IPAD', IS_IPAD); | |
// console.log('IS_IPAD_CHROME', IS_IPAD_CHROME); | |
// console.log('IS_IPHONE', IS_IPHONE); | |
// console.log('IS_ANDROID', IS_ANDROID); | |
// console.log('IS_ANDROID_FIREFOX', IS_ANDROID_FIREFOX); | |
// console.log('IS_SILK', IS_SILK); | |
// console.log('IS_WP', IS_WP); | |
// console.log('WP_VER', WP_VER); | |
// console.log('IE_MOBILE_VER', IE_MOBILE_VER); | |
// console.log('IPAD_VER', IPAD_VER); | |
// console.log('ANDROID_VER', ANDROID_VER); | |
var inlineVideo = WP_VER >= 8.1 && IE_MOBILE_VER >= 11 || !IS_IPHONE && (!IS_ANDROID || ANDROID_VER >= 3); | |
console.log(name, inlineVideo); | |
} | |
test('IE WP8.1', 'Mozilla/5.0 (Windows Phone 8.1; ARM; Trident/7.0; Touch; rv:11; IEMobile/11.0) like Android 4.1.2; compatible) like iPhone OS 7_0_3 Mac OS X WebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.99 Mobile Safari /537.36') | |
test('IPhone', 'Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5'); | |
test('IPad', 'Mozilla/5.0 (iPad; U; CPU OS 4_3_3 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5'); | |
test('Android 2.2.1', 'Mozilla/5.0 (Linux; U; Android 2.2.1; en-us; Nexus One Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); | |
test('Android 3.0.0', 'Mozilla/5.0 (Linux; U; Android 3.0.0; en-us; Nexus One Build/FRG83) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1'); | |
test('Android 5', 'Mozilla/5.0 (Linux; Android 5.0; en-us; Samsung Galaxy S5) AppleWebKit/537.36 (KHTML, like Gecko) Mobile Safari/537.36 Chrome/39.0.2171.65'); | |
test('Blackberry', 'Mozilla/5.0 (BlackBerry; U; BlackBerry AAAA; en-US) AppleWebKit/534.11+ (KHTML, like Gecko) Version/X.X.X.X Mobile Safari/534.11+'); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment