这篇文章将为大家详细讲解有关Android中怎么判断是否能上网,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
Android 判断是否能真正上网的实例详解
检测网络是否连接
实现代码:
/**
*
检测网络是否连接
*
*
@return
*/
private
boolean
isNetworkAvailable() {
//
得到网络连接信息
ConnectivityManager
manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
//
去进行判断网络是否连接
if
(manager.getActiveNetworkInfo() != null)
{
return
manager.getActiveNetworkInfo().isAvailable();
}
return
false;
}
ping的状态
public static final boolean ping() {
String result = null;
try {
String ip = "www.baidu.com";// ping 的地址,可以换成任何一种可靠的外网
Process p = Runtime.getRuntime().exec("ping -c 3 -w 100 " + ip);// ping网址3次
// 读取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.d("------ping-----", "result content : " + stringBuffer.toString());
// ping的状态
int status = p.waitFor();
if (status == 0) {
result = "success";
return true;
} else {
result = "failed";
}
} catch (IOException e) {
result = "IOException";
} catch (InterruptedException e) {
result = "InterruptedException";
} finally {
Log.d("----result---", "result = " + result);
}
return false;
}
关于Android中怎么判断是否能上网就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。