package cn.lili.common.utils;
|
|
|
import eu.bitwalker.useragentutils.DeviceType;
|
import eu.bitwalker.useragentutils.UserAgent;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
/**
|
* 客户端类型统计
|
*
|
* @author Chopper
|
* @version v1.0
|
* 2021-02-26 10:53
|
*/
|
public class UserAgentUtils {
|
|
/**
|
* 获取设备类型
|
*
|
* @param request
|
* @return
|
*/
|
public static DeviceType getDeviceType(HttpServletRequest request) {
|
return getUserAgent(request).getOperatingSystem().getDeviceType();
|
}
|
|
/**
|
* 是否是PC
|
*
|
* @param request
|
* @return
|
*/
|
public static boolean isComputer(HttpServletRequest request) {
|
return DeviceType.COMPUTER.equals(getDeviceType(request));
|
}
|
|
/**
|
* 是否是手机
|
*
|
* @param request
|
* @return
|
*/
|
public static boolean isMobile(HttpServletRequest request) {
|
return DeviceType.MOBILE.equals(getDeviceType(request));
|
}
|
|
/**
|
* 是否是平板
|
*
|
* @param request
|
* @return
|
*/
|
public static boolean isTablet(HttpServletRequest request) {
|
return DeviceType.TABLET.equals(getDeviceType(request));
|
}
|
|
/**
|
* 是否是手机和平板
|
*
|
* @param request
|
* @return
|
*/
|
public static boolean isMobileOrTablet(HttpServletRequest request) {
|
DeviceType deviceType = getDeviceType(request);
|
return DeviceType.MOBILE.equals(deviceType) || DeviceType.TABLET.equals(deviceType);
|
}
|
|
/**
|
* 获取用户代理对象
|
*
|
* @param request
|
* @return
|
*/
|
public static UserAgent getUserAgent(HttpServletRequest request) {
|
return UserAgent.parseUserAgentString(request.getHeader("User-Agent"));
|
}
|
|
|
}
|