您的位置:首页 > 理论基础 > 计算机网络

Android开发之WIFI网络操作

2013-03-13 17:40 375 查看
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(参数)方法,通过其中参数设置打开或关闭WIFI,eg:true表示打开,false表示关闭。

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

Java示例代码:

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

wifiManager=(WifiManager)wifiActivity.this.getSystemService(

Service.WIFI_SERVICE

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

);

//改变WIFI状态;

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

stateTextView.setText(

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

);

,,呵呵,补充一下,需要Android系统的手机进行测试......
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: