Android 用ping的方法判断当前网络是否可用

判断网络的情况中,有个比较麻烦的情况就是连上了某个网络,但是那个网络无法上网 ,,, = = 

想到了用ping指令来判断,经测试,可行~ ~ ~ 


private static final boolean ping() {

String result = null;

try {

String ip = "www.baidu.com";// 除非百度挂了,否则用这个应该没问题~

Process p = Runtime.getRuntime().exec("ping -c 3 -w 100 " + ip);//ping3次 


// 读取ping的内容,可不加。

InputStream input = p.getInputStream();

BufferedReader in = new BufferedReader(new InputStreamReader(input));

StringBuffer stringBuffer = new StringBuffer();

String content = "";

while ((content = in.readLine()) != null) {

stringBuffer.append(content);

}

Log.i("TTT", "result content : " + stringBuffer.toString());


// PING的状态

int status = p.waitFor();

if (status == 0) {

result = "successful~";

return true;

} else {

result = "failed~  cannot reach the IP address";

}

} catch (IOException e) {

result = "failed~ IOException";

} catch (InterruptedException e) {

result = "failed~ InterruptedException";

} finally {

Log.i("TTT", "result = " + result);

}

return false;

}




Android 用ping的方法判断当前网络是否可用,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。