2

我一直在寻找有关检测 Android 设备与 iOS 设备的信息,以便我可以根据设备显示下载 Android 或 iOS 应用程序的链接。我遇到的每个答案都说要在导航器对象中查找“Android”userAgent,但是在快速打印出该对象后,在任何地方都没有任何 Android 迹象。我认为这一定是较新的 Android 设备的一个功能。相反,我不得不通过检查对象是否带有“Mozilla”标签而不是“Chrome”标签来做一些工作。这似乎工作正常,但最近刚刚为 Android ICS+ 发布了 Chrome 浏览器,那么现在我可以检查什么来区分移动设备和家用计算机?至少在这种情况下我'

//更新 - 我发现 HTC 设备(可能还有一些蜂窝设备)输出错误的 userAgent,除非用户处于“移动查看模式”,可以在他们的设置中打开。

    else if( /(Mozilla)/i.test(navigator.userAgent) !== (/(Chrome)/i.test(navigator.userAgent))) {
    $('a#iphone_app').css("visibility", "hidden");
    $('a#iphone_app').css("display", "none")
    }
4

1 回答 1

0

不确定是否要完全隐藏内容。也许只是让一个比另一个更突出。表明你支持这两个平台对你来说是一个加分项。

运行 Chrome 的 GNex 上的 userAgent:

"Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76K) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19"

运行 Crome 的 MacBook 上的 userAgent:

"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/535.24 (KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24"
于 2012-08-10T17:17:04.617 回答