Android开发之WIFI网络操作

1.WIFi网卡有五个状态,实际就是一些整形常量:

WIFI_STATE_DISABLED:WIFI不能使用,其值是:1.

WIFI_STATE_DISABLING:WIFI正在关闭中,由于WIFI关闭是需要一个过程,其值是:0

WIFI_STATE_ENABLED:WIFI可以使用,其值是:3.

WIFI_STATE_ENABLING:WIFI正在开启中, 其值是:2.

WIFI_STATE_UNKNOWN:WIFI未知网卡状态,当手机或程序出现错误引起WIFi不可用,其值是:4.

2.操作WIFi需要获取的权限:(主要操作权限有以下四个)

CHANGE_NETWORK_STATE :允许修改网络状态的权限。

CHANGE_WIFI_STATE:允许修改 WIFI状态的权限。

ACCESS_NETWORK_STATE:允许访问网络状态的权限。

ACCESS_WIFI_STATE:允许访问 WIFI状态的权限。

声明操作WIFI的权限在AndroidManifest配置文件中进行。

<!--得到WIFI访问网络所需要的权限 -->

<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE">

</uses-permission>

<uses-permission android:name="android.permission.CHANGE_WIFI_STATE">

</uses-permission>

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE">

</uses-permission>

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE">

</uses-permission>

 

3.WIFI状态进行操作主要涉及到三个方面:

A:得到wifiManager对象,这个对象是操作WIFI网卡的根本,无论是改变,还是获取,都得通过这个对象。

B:改变WIFI网卡的状态,涉及到一个wifiManager对象的setWifiEnabled(参数)方法,通过其中参数设置打开或关闭WIFIegtrue表示打开,false表示关闭。

C:获取WIFI网卡的状态,涉及到一个wifiManager对象的getWifiState方法,通过此方法可以得到WIFI当前的状态,即前面所说的五种状态。

 

Java示例代码:

//得到WifiManager对象,这是操作Wifi网上的根本,无论是改变,获取其状态,都在通过此对象;

wifiManager=(WifiManager)wifiActivity.this.getSystemService(

Service.WIFI_SERVICE

//,,Context.WIFI_SERVICE,,两种都可以,ServiceContext的一个子类,其中的WIFI_SERVICE是从Context中继承下来的;

);

 

//改变WIFI状态;

wifiManager.setWifiEnabled(true);//true表示打开,false表示关闭;

 

stateTextView.setText(

wifiManager.getWifiState()//得到WIFI的当前状态;

);

,,呵呵,补充一下,需要Android系统的手机进行测试......

posted on 2013-03-13 17:40  疯狂的石头陈  阅读(279)  评论(0编辑  收藏  举报

导航