Android 判断是否能真正上网
来源:互联网 发布:c语言中sleep函数 编辑:程序博客网 时间:2024/06/13 20:16
有时候我们连接上一个没有外网连接的WiFi或者有线就会出现这种极端的情况,目前Android SDK还不能识别这种情况,一般的解决办法就是ping一个外网。
* @author suncat
* @category 判断是否有外网连接(普通方法不能判断外网的网络是否连接,比如连接上局域网)
* @
return
*/
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
;
转载 http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0109/2291.html
0 0
- Android 判断是否能真正上网
- Android 判断是否能真正上网
- Android 判断是否能真正上网
- Android 判断是否能真正上网【转】
- Android 判断是否能真正上网(避免连入wifi无网的状态)
- Android 判断是否能真正上网(避免连入wifi无网的状态)
- android判断网络是否可以上网
- Android 判断设备 是否使用代理上网
- wifi是否连接且是否能上网
- 如何判断团队是否真正实施Scrum?
- 如何判断WIFI是否可以上网
- Android功能点(一)——判断网络是否真正连通
- [修改]脚本判断网站是否能打开
- 用来判断XP风格是否使能
- 判断是否能打开服务器网页
- 判断一个除数是否能除尽
- 判断服务器相互是否能访问
- java判断ip是否能ping通
- Android Touch事件传递机制
- 最简单解决CHM文件无法显示的办法
- The Triangle
- 字符串赋值,查找,交换
- rpm命令详解
- Android 判断是否能真正上网
- Dynamics CRM 2015 New Feature (4): Calculate Field & Rollup Field
- Ext JS 4官方指南(四)—— 基本概念之Ext JS 容器与布局
- NGUI学习笔记
- view绘制流程些许心得
- MySQL行级锁、表级锁、页级锁详细介绍
- ARC下的单例及其应用
- Linux下 vsftpd安装配置 ftp服务器
- Open quote is expected for attribute "namespace" associated with an element type "mapper".