android下wifi连接的问题

Jathew 发布于 2012/04/13 14:34
阅读 3K+
收藏 0

邓老师,有个问题请教下,

就是用代码连接wifi网络的时候,调用enablenetwork之后,如何判断这个网络最终是否连上呢?因为这个函数就算不返回-1,到最后也未必一定连上。

多谢了。

加载中
0
迷途d书童
迷途d书童
/**
	 * 检测网络是否可用
	 * @param context
	 * @return
	 */
	public boolean isNetworkConnected() {
		ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
		NetworkInfo ni = cm.getActiveNetworkInfo();
		return ni != null && ni.isConnectedOrConnecting();
	}

你可以试试这个

J
Jathew
这样检查有个问题:我需要设置多长时间去检查呢?如果时间太短,可能网络还没连上。如果时间太长,有可能其他网络又会去连接了。
0
邓凡平
邓凡平
你上网查下 好像判断available什么鬼玩意就知道了。
0
姚远
姚远
你可以参考一下Froyo时候的

NetworkConnectivityListener.java

http://www.oschina.net/code/explore/android-2.2-froyo/com/android/common/NetworkConnectivityListener.java

监听网络连接的变化,然后再去check NetworkInfo

 

姚远
姚远
我有点记不清了,好像是android2.3的时候这个class被拿掉了,不过你可以去Froyo里把这个class拿过来,放在自己的项目里用 至于如何调用,这个listener就是去听网络的变化,然后去check NetworkInfo,你可以替换或添加自己的wifi判断逻辑
J
Jathew
应该如何调用这个呢?能给个参考吗
0
姚远
姚远

我有点记不清了,好像是android2.3的时候这个class被拿掉了,不过你可以去Froyo里把这个class拿过来,放在自己的项目里用

至于如何调用,这个listener就是去听网络的变化,然后去check NetworkInfo,你可以替换或添加自己的wifi判断逻辑

0
强子1985
强子1985

获取WIFI_SERVICE,然后取出WIFI信息,如果不为NULL,并且IP不为0

就表示获得了WIFI的一个IP.

返回顶部
顶部