Android实现“判断域名是否有效”的功能
来源:互联网 发布:linux解压zip命令行 编辑:程序博客网 时间:2024/05/24 15:39
近期在做公司某一个app项目时,有这样的一个需求:公司app接口有部署在不同ip的服务器,通常我们app是直接请求带公司域名的接口服务器,但有可能遇到公司域名被DSN劫持的情况,这时就需要app转为请求另一个ip的接口服务器。
这种情况就需要实现“判断域名是否有效”的功能。主要有两种方法:
第一种、通过ping命令来判断域名是否可ping通。
主要实现代码如下:
Process p1 = Runtime.getRuntime().exec("ping -c 1 -w 100 " + 域名);int status1 = p1.waitFor();if (status1 == 0) { //域名能ping通,有效} else { //域名ping不通}
第二种、通过域名解析来判断域名是否有效。
主要实现方法如下:
private void AnalyseDomain(String host){ String IPAddress = ""; InetAddress ReturnStr = null; try {ReturnStr = java.net.InetAddress.getByName(host);IPAddress = ReturnStr.getHostAddress(); } catch (UnknownHostException e) {e.printStackTrace();//未知主机,域名解析失败 } //域名解析成功}
按照上述代码进行测试,在效率上,第一种方法较第二种方法要快几十~几百毫秒。
另外需要注意:判断域名是否有效,是一个耗时操作,要在子线程中进行,切记~
1 0
- Android实现“判断域名是否有效”的功能
- 实现键盘的输入学生成绩,并判断是否有效.
- 域名检测是否有效
- Android 判断一个url是否有效
- 判断字符串是否是有效的手机号码
- 判断是否是有效的IP地址
- 判断是否是有效的url
- 判断是否为有效电话号码的方法
- 判断网络是否有效的一些方法
- 判断是否为有效的手机号码
- 98.leetcode-判断是否有效的二叉排序树
- 判断是否是有效的cron表达式
- 判断是否是域名的正则表达式
- c++域名判断是否ipv6的网络
- 判断时间段是否有效
- 判断句柄是否有效
- 判断金额是否有效
- 判断session是否有效
- HBuilder之真机运行
- java基础之线程--线程概述及创建方法
- 提高Java代码可重用性的三个措施
- TCP/IP、Http、Socket的区别
- orm初识
- Android实现“判断域名是否有效”的功能
- java.io分类
- Flyweight模式详解--设计模式(10)
- HBuilder之Chrome调试Android手机
- mysql安装异常
- MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突
- PHP面试题之字符串反转
- 开心一笑
- 二维码的生成