Java判断是否为手机端访问
2016-09-13 09:24
274 查看
/**
* 根据当前请求的特征,判断该请求是否来自手机终端,主要检测特殊的头信息,以及user-Agent这个header
*
* @param request
* http请求
* @return 如果命中手机特征规则,则返回对应的特征字符串
*/
public static boolean isMobileDevice(HttpServletRequest request) {
boolean b = false;
boolean pcFlag = false;
boolean mobileFlag = false;
String via = request.getHeader("Via");
String userAgent = request.getHeader("user-agent");
for (int i = 0; via != null && !via.trim().equals("") && i < mobileGateWayHeaders.length; i++) {
if (via.contains(mobileGateWayHeaders[i])) {
mobileFlag = true;
break;
}
}
for (int i = 0; !mobileFlag && userAgent != null && !userAgent.trim().equals("")
&& i < mobileUserAgents.length; i++) {
if (userAgent.contains("iPad")) {
pcFlag = true;
break;
}
if (userAgent.contains(mobileUserAgents[i])) {
mobileFlag = true;
break;
}
}
for (int i = 0; userAgent != null && !userAgent.trim().equals("") && i < pcHeaders.length; i++) {
if (userAgent.contains(pcHeaders[i])) {
pcFlag = true;
break;
}
}
if (mobileFlag == true && pcFlag == false) {
b = true;
}
return b;// false pc true shouji
}
* 根据当前请求的特征,判断该请求是否来自手机终端,主要检测特殊的头信息,以及user-Agent这个header
*
* @param request
* http请求
* @return 如果命中手机特征规则,则返回对应的特征字符串
*/
public static boolean isMobileDevice(HttpServletRequest request) {
boolean b = false;
boolean pcFlag = false;
boolean mobileFlag = false;
String via = request.getHeader("Via");
String userAgent = request.getHeader("user-agent");
for (int i = 0; via != null && !via.trim().equals("") && i < mobileGateWayHeaders.length; i++) {
if (via.contains(mobileGateWayHeaders[i])) {
mobileFlag = true;
break;
}
}
for (int i = 0; !mobileFlag && userAgent != null && !userAgent.trim().equals("")
&& i < mobileUserAgents.length; i++) {
if (userAgent.contains("iPad")) {
pcFlag = true;
break;
}
if (userAgent.contains(mobileUserAgents[i])) {
mobileFlag = true;
break;
}
}
for (int i = 0; userAgent != null && !userAgent.trim().equals("") && i < pcHeaders.length; i++) {
if (userAgent.contains(pcHeaders[i])) {
pcFlag = true;
break;
}
}
if (mobileFlag == true && pcFlag == false) {
b = true;
}
return b;// false pc true shouji
}
相关文章推荐
- 手机端访问第三方java服务器后判断是否进行OAuth2.0网页微信公众号授权认证
- javaweb:判断当前请求是否为移动设备访问
- 函数判断是否为手机端访问
- 判断是否是手机端访问
- ThinkPHP3.2判断是否为手机端访问并跳转到另一个模块的方法
- 原生javascript判断是否是移动端访问,跳转到手机端网址代码
- java判断访问方式是手机端还是电脑端的工具类
- php判断是否手机端访问
- PHP判断访问设备是否为手机端的方法
- java 判断一个url是否可以访问的方法
- java request判断是否是微信客户端访问
- js判断是否为手机端访问
- filter 过滤器用户登录并判断是否属于电脑端或者手机端访问
- java访问远程文件判断是否存在的问题
- PHP判断是否手机端或PC端访问
- PHP判断是否为手机端访问,微信端访问
- javaweb:判断当前请求是否为移动设备访问
- java实现判断是手机端还是pc端访问
- PHP判断访客是否是手机端(移动端浏览器)访问的4种方法
- php 判断客户端是否为手机端访问