JSFiddle - React, Tailwind, and code Playground
by ajai jothi
JavaScript
function isInAppBrowser(userAgent) {
var _ua = userAgent || '';
var apps = {
messenger: /\bFB[\w_]+\/(Messenger|MESSENGER)/,
facebook: /\bFB[\w_]+\//,
twitter: /\bTwitter/i,
line: /\bLine\//i,
wechat: /\bMicroMessenger\//i,
puffin: /\bPuffin/i,
miui: /\bMiuiBrowser\//i,
instagram: /\bInstagram/i,
googleSearchApp: /\bGSA/i
};
var webView = ['WebView', '(iPhone|iPod|iPad)(?!.*Safari\/)', 'Android.*(wv|\.0\.0\.0)'];
var _isWebView = Boolean(_ua.match(new RegExp("(" + webView.join('|') + ")", 'ig'))),
_isInAppBrowser = Object.keys(apps).some(function(app) {
return apps[app].test(_ua);
});
return _isWebView || _isInAppBrowser;
}
alert('isInAppBrowser: ' + isInAppBrowser(navigator.userAgent));