我正在开发谷歌浏览器扩展程序,需要检测Chrome运行的操作系统,但是似乎找不到相关信息。请帮忙! 谢谢。
我正在开发谷歌浏览器扩展程序,需要检测Chrome运行的操作系统,但是似乎找不到相关信息。请帮忙! 谢谢。
最近新增的功能,您可以在Chrome自己的API中使用getPlatformInfo方法:
chrome.runtime.getPlatformInfo(function(info) {
// Display host OS in the console
console.log(info.os);
});
window.navigator.appVersion
中搜索操作系统的名称和版本。navigator.platform
。 - resunavigator.platform
会更合适,但对我来说,我经常使用基于 navigator.platform
的以下脚本就足够了。const ua = navigator.userAgent
const getBrowser = (): 'Opera' | 'Chrome' | 'Firefox' | 'Safari' | 'IE' | 'Edge' | 'Unknown' | undefined => {
if (ua.indexOf('Opera') > -1) {
return 'Opera'
}
if (ua.indexOf('Chrome') > -1) {
return 'Chrome'
}
if (ua.indexOf('Firefox') > -1) {
return 'Firefox'
}
if (ua.indexOf('Safari') > -1) {
return 'Safari'
}
if (ua.indexOf('MSIE') > -1) {
return 'IE'
}
if (ua.indexOf('Trident') > -1) {
return 'IE'
}
if (ua.indexOf('Edge' || 'Chrome') > -1) {
return 'Edge'
}
return 'Unknown'
}
const getOS = (): 'Windows' | 'Mac' | 'Linux' | 'Android' | 'iOS' | 'Unknown' => {
if (ua.indexOf('Windows') > -1) {
return 'Windows'
}
if (ua.indexOf('Mac') > -1) {
return 'Mac'
}
if (ua.indexOf('Linux') > -1) {
return 'Linux'
}
if (ua.indexOf('Android') > -1) {
return 'Android'
}
if (ua.indexOf('iPhone') > -1) {
return 'iOS'
}
if (ua.indexOf('iPad') > -1) {
return 'iOS'
}
if (ua.indexOf('iPod') > -1) {
return 'iOS'
}
return 'Unknown'
}
export { getBrowser, getOS }