Java获得用户访问时,硬件设施

2021/6/3 12:22:19

本文主要是介绍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获得用户访问时,硬件设施的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程