如何通过手机浏览器或PC浏览器检查网页是否被访问?

时间:2012-07-28 08:44:36

标签: java java-ee mobile web

如何检查移动浏览器或计算机浏览器是否已打开网页。我试过这个:

name = request.getHeader("User-Agent");

但是它给出了这些类型的结果:

  • 对于Fedora Firefox浏览器: Mozilla / 5.0(X11; Linux i686; rv:13.0)Gecko / 20100101 Firefox / 13.0
  • 对于Android手机浏览器: Mozilla / 5.0(Linux; U; Android 2.3.6; en-in; Micromax A50 Build / GRK395)AppleWebKit / 533.1(KHTML,类似Gecko)版本/ 4.0 Mobile Safari / 533.1

我无法从上述两个结果中区分出网页是否被移动电话或计算机访问过。我该怎么做?

如果我能够在 Java 中执行此操作,那就太棒了。

4 个答案:

答案 0 :(得分:3)

像Mikko写的那样,没有简单的方法来检测手机。

但你可以尝试: http://code.google.com/p/php-mobile-detect/

类似于之前的回答: http://detectmobilebrowsers.com/

答案 1 :(得分:2)

没有任何简单的'mobile = true'标志。你只需要自己检查一下。从here,您可以找到要搜索的值的子集(列表相当陈旧,因此应添加较新的移动浏览器)。

答案 2 :(得分:1)

这是我刚发现的一个很好的链接:

http://www.abeautifulsite.net/blog/2011/11/detecting-mobile-devices-with-javascript/

var isMobile = {
    Android: function() {
        return navigator.userAgent.match(/Android/i);
    },
    BlackBerry: function() {
       return navigator.userAgent.match(/BlackBerry/i);
    },
    iOS: function() {
        return navigator.userAgent.match(/iPhone|iPad|iPod/i);
    },
    Opera: function() {
        return navigator.userAgent.match(/Opera Mini/i);
    },
    Windows: function() {
        return navigator.userAgent.match(/IEMobile/i);
    },
    any: function() {
        return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() ||      isMobile.Opera() || isMobile.Windows());
    }
};

答案 3 :(得分:0)

您还可以查看屏幕的大小(较小的尺寸可能意味着移动设备),应该可以通过javascript访问。