本文主要是介绍Java获得用户访问时,硬件设施,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import cz.mallat.uasparser.OnlineUpdater;
import cz.mallat.uasparser.UASparser;
import cz.mallat.uasparser.UserAgentInfo;
/**
* <p>
* 获得用户访问时,硬件设施(不太精准,因为用户可以更改设备的请求头)
* </p>
*/
public class UserAgentUtil {
static UASparser uasParser = null;
// 初始化 uasParser 对象
static {
try {
uasParser = new UASparser(OnlineUpdater.getVendoredInputStream());
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 获得用户的 操作系统名称
*
* @param info 客户端请求头中的 User-Agent 的请求头
* @return 用户的操作系统名称
*/
public static String getOsFamily(String info) {
try {
return uasParser.parse(info).getOsFamily();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
/**
* 获得用户的 操作系统版本
*
* @param info 客户端请求头中的 User-Agent 的请求头
* @return 用户的操作系统版本
*/
public static String getOsName(String info) {
try {
return uasParser.parse(info).getOsName();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
/**
* 获得用户的 浏览器名称
*
* @param info 客户端请求头中的 User-Agent 的请求头
* @return 用户浏览器名称
*/
public static String getUaFamily(String info) {
try {
return uasParser.parse(info).getUaFamily();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
/**
* 获得用户的 浏览器版本
*
* @param info 客户端请求头中的 User-Agent 的请求头
* @return 用户浏览器版本
*/
public static String getBrowserVersionInfo(String info) {
try {
return uasParser.parse(info).getBrowserVersionInfo();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
/**
* 获得用户的 浏览器名称 + 版本
*
* @param info 客户端请求头中的 User-Agent 的请求头
* @return 浏览器名称 + 版本
*/
public static String getUaName(String info) {
try {
return uasParser.parse(info).getUaName();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
/**
* 获得用户的 设备类型
*
* @param info 客户端请求头中的 User-Agent 的请求头
* @return 设备类型 【Tablet(iPad) / Smartphone(移动手机) / Personal computer(PC)】
*/
public static String getDeviceType(String info) {
try {
return uasParser.parse(info).getDeviceType();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
/**
* 获得用户的 浏览器类型
*
* @param info 客户端请求头中的 User-Agent 的请求头
* @return 浏览器的类型【Mobile Browser(移动浏览器) / Browser(浏览器)】
*/
public static String getType(String info) {
try {
return uasParser.parse(info).getType();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
这篇关于Java获得用户访问时,硬件设施的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!