Java實(shí)現(xiàn)判斷瀏覽器版本與類型簡單代碼示例
簡單的Java獲取瀏覽器版本和類型方法,不是很完美,但是可以用;
希望大家加以完善!
public static void main(String[] args) {
String agent=request.getHeader("User-Agent").toLowerCase();
System.out.println(agent);
System.out.println("瀏覽器版本:"+getBrowserName(agent));
}
public String getBrowserName(String agent) {
if(agent.indexOf("msie 7")>0){
return "ie7";
} else if(agent.indexOf("msie 8")>0){
return "ie8";
} else if(agent.indexOf("msie 9")>0){
return "ie9";
} else if(agent.indexOf("msie 10")>0){
return "ie10";
} else if(agent.indexOf("msie")>0){
return "ie";
} else if(agent.indexOf("opera")>0){
return "opera";
} else if(agent.indexOf("opera")>0){
return "opera";
} else if(agent.indexOf("firefox")>0){
return "firefox";
} else if(agent.indexOf("webkit")>0){
return "webkit";
} else if(agent.indexOf("gecko")>0 && agent.indexOf("rv:11")>0){
return "ie11";
} else{
return "Others";
}
}
判斷是手機(jī)還是電腦瀏覽器
public final static String[] agent = { "Android", "iPhone", "iPod","iPad", "Windows Phone", "MQQBrowser" };
public static Boolean checkAgentIsMobile(String ua) {
Boolean flag = false;
if (!ua.contains("Windows NT") || (ua.contains("Windows NT") && ua.contains("compatible; MSIE 9.0;"))) {
// 排除 蘋果桌面系統(tǒng)
if (!ua.contains("Windows NT") && !ua.contains("Macintosh")) {
for (String item : agent) {
if (ua.contains(item)) {
flag = true;
break;
}
}
}
}
return flag;
}
ua為:String ua = request.getHeader("User-Agent"); //獲取的瀏覽器返回的響應(yīng)頭中的值。
總結(jié)
以上就是本文關(guān)于Java實(shí)現(xiàn)判斷瀏覽器版本與類型簡單代碼示例的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以參閱本站其他Java相關(guān)專題。如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
相關(guān)文章
mybatis實(shí)體類字段大小寫及字段獲取不到值問題
這篇文章主要介紹了mybatis實(shí)體類字段大小寫及字段獲取不到值問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12
通過實(shí)例了解cookie機(jī)制特性及使用方法
這篇文章主要介紹了通過實(shí)例了解cookie機(jī)制特性及使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09
Java微信公眾平臺(tái)之群發(fā)接口(高級群發(fā))
這篇文章主要為大家詳細(xì)介紹了Java微信公眾平臺(tái)之群發(fā)接口,高級群發(fā)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
一文帶你掌握J(rèn)ava?LinkedBlockingQueue
LinkedBlockingQueue?是一個(gè)可選有界阻塞隊(duì)列,這篇文章主要為大家詳細(xì)介紹了Java中LinkedBlockingQueue的實(shí)現(xiàn)原理與適用場景,感興趣的可以了解一下2023-04-04
Java AOP動(dòng)態(tài)代理詳細(xì)介紹
AOP是一種設(shè)計(jì)思想,是軟件設(shè)計(jì)領(lǐng)域中的面向切面編程,它是面向?qū)ο缶幊痰囊环N補(bǔ)充和完善。本文將用Java實(shí)現(xiàn)AOP代理的三種方式,需要的可以參考一下2022-08-08
mybatis?resultMap沒有全部對應(yīng)的字段處理方式
這篇文章主要介紹了mybatis?resultMap沒有全部對應(yīng)的字段處理方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03

