const getUserAgent = (ua?: string) => {
if (ua) {
return ua.toLowerCase();
}
return typeof window !== 'undefined' && navigator.userAgent ? navigator.userAgent.toLowerCase() : '';
};
const isAndroid = (userAgent?: string) => {
return /android/i.test(getUserAgent(userAgent));
};
const isIos = (userAgent?: string) => {
const ua = getUserAgent(userAgent);
return /iphone os/i.test(ua) || /ipad/i.test(ua);
};
const isQQ = (userAgent?: string) => {
return /qq/i.test(getUserAgent(userAgent));
};
const isQQBrowser = (userAgent?: string) => {
const ua = getUserAgent(userAgent);
const _isIosQQ = isIos() && ua.indexOf('mqqbrowser') > -1
const _isAndroidQQ = isAndroid() && /mqqbrowser/i.test(ua) && !( /qq/i.test((ua).split('mqqbrowser').join('')));
return _isIosQQ || _isAndroidQQ
};
const isQQApp = (userAgent?: string) => {
const ua = getUserAgent(userAgent);
const _isIosQQ = isIos() && /\sqq/i.test(ua);
const _isAndroidQQ = isAndroid() && /mqqbrowser/i.test(ua) && /qq/i.test((ua).split('mqqbrowser').join(''));
return _isIosQQ || _isAndroidQQ;
};