【问题标题】:detect native/stock Android browser User Agent string via PHP通过 PHP 检测原生/库存 Android 浏览器用户代理字符串
【发布时间】:2013-04-15 16:10:45
【问题描述】:

我在原生/原生 Android 4.1 浏览器上遇到 很多 JavaScript 错误,我想通过 PHP 检测用户代理字符串。

我使用Mobile_Detect 库来检查操作系统、设备和浏览器,但它不支持检测原生 Android 浏览器。

关于这个主题有很多关于 SO 的帖子,但似乎没有回答。

我收到很多错误说明:

Cannot set property 'webkitTransitionDelay'
Cannot set property 'webkitTransform'

...所以我想为这个浏览器切换 jQuery Mobile 页面转换关闭 - 但我需要能够先检测到它。

有没有办法检测它?我必须强调这不是我要检测的操作系统,而是本机浏览器(也称为 Android)。

【问题讨论】:

    标签: android jquery-mobile mobile webkit css-transitions


    【解决方案1】:

    我正在使用以下内容:

    (preg_match('/^Mozilla\/5\.0.*Android\s[12]\..*\sMobile/i', $_SERVER['HTTP_USER_AGENT']) 
        && !preg_match('/\sChrom/i', $_SERVER['HTTP_USER_AGENT']))
    

    在较早的 Android 平台(1.x 或 2.x)(don't support SVG)上匹配 Android 浏览器。

    • “Chrom”排除“Chrome”和“Chromium”(后者可能不存在)
    • Firefox 当前不包含 Android 版本,这意味着它没有与上面的肯定匹配。我在下面为它添加了一个明确的排除项,以防它开始添加 Android 版本号

    几个测试字符串:

    旧版 Android 浏览器

    Mozilla/5.0 (Linux; U; Android 2.3.5; en-gb; SAMSUNG GT-I9100/I9100BUKJ3 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
    

    Android 上的 Chrome

    Mozilla/5.0 (Linux; Android 4.1.2; GT-I9100 Build/JZO54K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.59 Mobile Safari/537.36
    

    Android 上的 Firefox

    Mozilla/5.0 (Android; Mobile; rv:26.0) Gecko/26.0 Firefox/26.0
    

    Android 上的 Opera Mini

    Opera/9.80 (Android; Opera Mini/7.5.33361/34.788; U; en) Presto/2.8.119 Version/11.10 Mozilla/5.0 (Linux; U; Android 2.3.5; en-gb; GT-I9100 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
    

    任何版本的 Android 浏览器 + 不包括 Firefox:

    (preg_match('/^Mozilla\/5\.0.*Android\s\d\..*\sMobile/i', $_SERVER['HTTP_USER_AGENT']) 
        && !preg_match('/\sChrom/i', $_SERVER['HTTP_USER_AGENT'])
        && !preg_match('/\sFirefox/i', $_SERVER['HTTP_USER_AGENT']))
    

    这仅与所使用的测试用户代理一样好,因此请在 cmets 中贡献自己的力量!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-19
      • 2012-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-09
      相关资源
      最近更新 更多