移动接口开发:JAVA判断是android还是ios 端请求

 

做移动开发时,时常要判断移动终端是IOS还是android,以及浏览器,或者手机型号等等操作

其实在用户发起请求时,可以通过header来获取到你想要的东西;我们来看看:

1

2

3

4

5

public Object dowlaodapplawyer(HttpServletRequest request, HttpServletResponse response){

      String agent= request.getHeader("user-agent");

 

      System.out.println(agent);

}

 我们可以看到打印的内容如下:

android(小米,内网)访问:

Mozilla/5.0 (Linux; U; Android 4.4.4; zh-cn; MI 3W Build/KTU84P) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.4 TBS/025483 Mobile Safari/533.1 MicroMessenger/6.3.9.48_refecd3e.700 NetType/WIFI Language/zh_CN

android(小米,外网网)访问:

Mozilla/5.0 (Linux; U; Android 4.4.2; zh-cn; GT-I9500 Build/KOT49H) AppleWebKit/
537.36 (KHTML, like Gecko)Version/4.0 MQQBrowser/5.0 QQ-URL-Manager Mobile Safar
i/537.36

我们很容易的就可以判断出 android手机  是否是 WIFI  型号

,浏览器等等;

判断方法如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

if(agent.contains("Android")){

//是否是安卓系统

}

if(agent.contains("iPhone")||agent.contains("iPod")||agent.contains("iPad")){

 

}

 if(agent.contains("MI")){

//小米

}

 

 if(agent.contains("lenovo")){

//联想

}

 

 if(agent.contains("WIFI")){

//是否wifi

}


 

 

有了上面这些判定条件,那么现在有一个需求,一个二维码,通过扫码方式下载一个APP,android将根据手机跳转到不同的应用市场,iphone,ipad等跳转到苹果应用市场的下载链接代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

public Object dowlaodapplawyer(HttpServletRequest request, HttpServletResponse response){

     String agent=  request.getHeader("user-agent");

     if(agent.contains("Android")){

         try {

             if(agent.contains("MI")){
                        
//小米手机跳转到小米应用市场

                 response.sendRedirect("http://app.mi.com/detail/119750?ref=search");

             }else{

                 response.sendRedirect("http://www.wandoujia.com/apps/com.rogerlauren.lawyer");

             }

        catch (IOException e) {

        }

     }else if(agent.contains("iPhone")||agent.contains("iPod")||agent.contains("iPad")){
                         
//通过微信进入此界面时,由于苹果市场并没有提供在浏览器中打开的提示

         if(agent.contains("Safari")){

             try {
                        
//听过手机跳转到苹果应用市场(重定向)

                 response.sendRedirect("https://itunes.apple.com/cn/app/you-lu-lu-shi-duan/id1057109909?mt=8");

                catch (IOException e) {

                    e.printStackTrace();

                }

         }else{
                
//跳转到自定义页面,添加提示在浏览器中打开的提示(转发,在浏览器中打开时,地址不变)

              return "dowloadhelp";

         }

     }

    return null;

}

你可能感兴趣的:(Java)