Android判断目标IP是否存在

来源:互联网 发布:mac默认启动windows 编辑:程序博客网 时间:2024/06/07 05:52

一共有两种方法:

一、通过TCP发送消息到目标IP,捕获异常。

        此方法不累述了,此方法有一个最大的问题是当对方单向断网则不管用了(例如拔网线)。

二、通过windows下ping命令的方式

        此方法是目前最有效的方法,并且ping方式有别于SOCKET通信,可以直接在主线程中运行。

</pre><pre>
private boolean startPing(String ip) {boolean isexist = false;Process process = null;try {process = Runtime.getRuntime().exec("ping -c 1 -i 0.5 -W 1 " + ip);int status = process.waitFor();if (status == 0) {isexist = true;} else {isexist = false;}} catch (IOException e) {isexist = false;} catch (InterruptedException e) {isexist = false;} finally {process.destroy();}Log.i("mmmm", "ping:"+ip+",isexist:"+isexist);return isexist;}


-c:表示次数,1 为1次 
-w:表示deadline, time out的时间,单位为秒,100为100秒。

-i:表示秒数设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。

0 0
原创粉丝点击