文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

javaweb判断当前请求是否为移动设备访问的方法

2023-05-31 14:34

关注

这段时间都是在做pc端的业务,结果经理找到我说,可能要做移动端的应用,后台逻辑还是用我写的逻辑,但是需要改动一些,看看怎么处理。

由于移动端和pc端还是稍微有些区别的,我觉得最好是在一个地儿统一判断,而且不要改动原先的代码,这样可以从一定程度上减少bug的数量。我的想法是首先应该判断当前请求是否为移动端,然后设一个标识到session中,然后就可以随便处理了。不管你是单独处理,还是统一处理,直接读取session就可以做相应的判断了。

我封装成了一个类,现在分享给大家:

package com.tgb.util;  import java.util.regex.Matcher; import java.util.regex.Pattern;   public class CheckMobile {    // \b 是单词边界(连着的两个(字母字符 与 非字母字符) 之间的逻辑上的间隔),  // 字符串在编译时会被转码一次,所以是 "\\b"  // \B 是单词内部逻辑间隔(连着的两个字母字符之间的逻辑上的间隔)  static String phoneReg = "\\b(ip(hone|od)|android|opera m(ob|in)i"    +"|windows (phone|ce)|blackberry"    +"|s(ymbian|eries60|amsung)|p(laybook|alm|rofile/midp"    +"|laystation portable)|nokia|fennec|htc[-_]"    +"|mobile|up.browser|[1-4][0-9]{2}x[1-4][0-9]{2})\\b";  static String tableReg = "\\b(ipad|tablet|(Nexus 7)|up.browser"    +"|[1-4][0-9]{2}x[1-4][0-9]{2})\\b";    //移动设备正则匹配:手机端、平板  static Pattern phonePat = Pattern.compile(phoneReg, Pattern.CASE_INSENSITIVE);  static Pattern tablePat = Pattern.compile(tableReg, Pattern.CASE_INSENSITIVE);      public static boolean check(String userAgent){   if(null == userAgent){    userAgent = "";   }   // 匹配   Matcher matcherPhone = phonePat.matcher(userAgent);   Matcher matcherTable = tablePat.matcher(userAgent);   if(matcherPhone.find() || matcherTable.find()){    return true;   } else {    return false;   }  } } 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 资料下载
  • 历年真题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯