Javascript : Identify whether it is a desktop Linux or Android

标签 javascript android linux

无法使用 navigator.userAgentnavigator.platform 识别它是 linux 台式机还是 android 设备,因为某些 android 设备有字符串 linux 在两者中。详情如下

Device                           OS               navigator.platform  
--------------------------------------------------------------------
Samsung Galaxy S3                Android 4.3      Linux armv7l
HTC One                          Android 4.4.2    Linux armv7l
Sony Xperia Z                    Android 4.2.2    Linux armv7l
Motorola Moto G                  Android 4.4.2    Linux armv7l
Samsung Galaxy Tab 3             Android 4.2.2    Linux i686
Nexus 10                         Android 4.4.2    Linux armv7l
Lenovo Yoga                      Android 4.2.2    Linux armv7l

导航器.userAgent

Mozilla/5.0 (Linux; U; Android 2.2; en-us; SCH-I800 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

即使我尝试使用触摸事件,但 linux 桌面可以有触摸或者它可以模拟触摸。请帮忙

更新:即使桌面浏览器的模拟设备处于 Activity 状态,该解决方案也应检测到 Linux。 View Details

最佳答案

你可以试试这个:

if (navigator.userAgent.match(/android/i)) {
   // it's andorid
} else if (navigator.userAgent.match(/linux/i)) {
   // it's linux
}

关于Javascript : Identify whether it is a desktop Linux or Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29815326/

相关文章:

javascript - 另一个对象内的整数对象属性也具有整数属性

JavaScript 日期序列号

android - VideoView无法播放视频错误

php - 正在向服务器发送信息,但信息在某处丢失

javascript - 使用 Java 服务器端在 iFrame 上显示生成的 PDF 文件

Javascript - 事件属性的浏览器命名约定让我感到困惑

android - 为低于 31 的 API 创建 LocationRequest

arrays - 可以在 shell 中读取命令用于将字符串分配给数组并重置默认数组

java - 将单个 JAR 文件正确打包为 RPM

linux - wxPython中的非轮询文件监控