设备检测是不是是android?
Posted
技术标签:
【中文标题】设备检测是不是是android?【英文标题】:Device detection if is android?设备检测是否是android? 【发布时间】:2015-11-11 22:53:34 【问题描述】:我有一个为 ios 和 android 设备部署的流星应用程序,我希望某些代码仅在 ios 设备上运行,而不是在 android 上运行。我知道我可以使用 navigator.userAgent 检测设备,但这只有在我的应用程序在浏览器上运行时才有效。
//如果它是浏览器,则可以使用
navigator.userAgent.toLowerCase().indexOf("android") > -1;
但是,如果我使用流星科尔多瓦插件为 android 创建了捆绑包,是否有任何可能的方法来检测设备,这样它就可以像本机应用程序一样工作。
【问题讨论】:
您尝试过 Device API 吗?您可以检查 if(device.platform == 'Android') Meteor device detection android or ios? 的可能重复项 【参考方案1】:正如 Nijil Nair 建议的那样,使用 Cordova Device Plugin 。如果您在添加插件时需要帮助,请参阅 Meteor Cordova 。正确安装插件后,您可以使用var devicePlatform = device.platform;
,它将根据设备返回以下内容之一:
【讨论】:
Meteor Cordova 链接已移至:guide.meteor.com/mobile.html#introduction 并非所有版本的 Windows 都返回WinCE
,请查看 this 了解更多信息。【参考方案2】:
没有插件的原因,只是使用窗口。
window.cordova.platformId
您还可以获取操作系统的版本。
完整输出:
window.cordova.platformId
“机器人”
window.cordova.platformVersion
“7.0.0”
【讨论】:
这个字段的文档在哪里?如何检查哪些值是可能的? 使用安全吗?我们可以依靠这个吗? @PlsWork 使用安全。一个新创建的 Cordova 项目有这行:console.log('Running cordova-' + cordova.platformId + '@' + cordova.version);
检查cordova-app-hello-world
包。还可以在 Cordova 项目的“平台”文件夹中搜索“platformId:platform.id”,您将在各种平台中看到它,例如android/platform_www/cordova.js 或 ios/www/cordova.js以上是关于设备检测是不是是android?的主要内容,如果未能解决你的问题,请参考以下文章
检测 Android/iOS 设备是不是已经通过 Unity3D 播放音乐