参考链接:
接上一篇文章:Android网络通信(4):WebKit应用。
WiFi---Wireless Fidelity
WiFi又称802.11b标准,最大优点传输速度高。WiFi操作的一些常见类和接口1、ScanResult:主要用来描述已经检测出的接入点,包括接入点的地址、名称、身份认证、频率、信号强度等信息。2、WifiConfiguration:WiFi网络的配置,包括安全配置等3、WifiInfo:WiFi无线连接的描述,包括接入点、网络连接状态、隐藏的接入点、IP地址、连接速度、MAC地址、网络ID、信号强度等信息。4、WifiManager:包括了管理WiFi连接的大部分API,如下内容:已经配置好的网络清单。这个清单可以查看和修改,而且可以修改个别记录的属性。当连接中有活动的Wi-Fi网络时,可以建立或关闭这个连接,并且可以查询有关网络状态的动态信息。对接入点的扫描结果包含足够的信息来决定需要与什么接入点建立连接。还定义了许多常量来表示Wi-Fi状态的改变。5、WifiManager.WifiLock:用户一段时间没有任何操作时,WiFi就会自动关闭,我们可以通过WifiLock来锁定WiFi网络,使其一直保持连接,直到锁定被释放。当有多个应用程序时可能会有多个WifiLock,在无线电设备中必须保证任何一个应用中都没有使用WifiLock时,才可以关闭它。在使用WiFi锁之前,必须确定应用需要WiFi的接入,或者能够在移动网络下工作。WiFi锁不能超越客户端的Wi-Fi Enabled设置,也没有飞行模式。如下代码可获得WifiManager对象,可使用这个对象来操作WiFi连接WifiManager wifiManager = (WifiManager)getSystemService(Context.WIFI_SERVICE); 如下为WifiManager的常用方法:addNetwork 添加一个配置好的网络连接calculateSignalLevel 计算信号强度compareSignalLevel 比较两个信号的强度createWifiLock 创建一个Wifi锁disableNetwork 取消一个配置好的网络,即使其不可用disconnect 从接入点断开enableNetwork 允许指定的网络连接getConfiguredNetworks 得到客户端所有已经配置好的网络列表getConnectionInfo 得到正在使用的连接的动态信息getDhcpInfo 得到最后一次成功的DHCP请求的DHCP地址getScanResults 得到被扫描到的接入点getWifiState 得到可用WiFi的状态isWifiEnabled 得到WiFi是否可用pingSupplicant 检查客户端对请求的反应reassociate 从当前接入点重新连接removeNetwork 从已经配置好的网络列表中删除指定ID的网络saveConfiguration 保存当前配置好的网络列表setWifiEnabled 设置WiFi是否可用startScan 扫描存在的接入点updateNetwork 更新已经配置好的网络AndroidManifest.xml文件 最后需要在此文件中对权限进行声明
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission> <uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"></uses-permission> <uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission> <uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission> <uses-permission android:name="android.permission.MODIFY_PHONE_STATE"></uses-permission>喜欢开源,乐意分享的大神们,欢迎加入QQ群:176507146,你值的拥有哦!
代码下载链接: