Android WIFI检测与设置

简介:

WIFI是无线通信协议,可以允许手机直接连接到无线网络。在现在3G资费还比较贵的情况下,WIFI对于手机来说是很重要的,我们可以很方便的下载软件,音乐等资源。Android手机必须要有WIFI网卡才能支持WIFI。Android应用程序有时候需要对WIFI网卡进行操作,从而操作WIFI网络。

WIFI网卡有一些状态,由一系列的整形常量来表示。

常量名 常量值 网卡状态
WIFI_STATE_DISABLED 1 WIFI网卡不可用
WIFI_STATE_DISABLING 0 WIFI正在关闭
WIFI_STATE_ENABLED 3 WIFI网卡可用
WIFI_STATE_ENABLING 2 WIFI网卡正在打开
WIFI_STATE_UNKNOWN 4 未知网卡状态

 

在应用程序中操作WIFI网卡一定的权限。 
WIFI 的主要操作权限有四个: 
CHANGE_NETWORK_STATE :允许修改网络状态的权限。 
CHANGE_WIFI_STATE :允许修改 WIFI 状态的权限。 
ACCESS_NETWORK_STATE :允许访问网络状态的权限。 
ACCESS_WIFI_STATE :允许访问 WIFI 状态的权限。 
在AndroidManifest.xml文件中添加权限。

 

 
  1. XML/HTML代码  
  2.       
  3. <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"></uses-permission>          
  4. <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>          
  5. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>          
  6. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>     

改变WIFI网卡的状态 
对WIFI网卡进行操作需要通过WifiManager对象来进行,获取该对象的方法如下: 
WifiManager wifiManger=(WifiManger)Context.getSystemService(Service.WIFI-SERVICE); 
打开WIFI网卡 
wifiManager.setWifiEnabled(true); 
关闭WIFI网卡 
wifiManager.setWifiEnabled(false); 
获取网卡当前的状态 
wifiManager.getWifiState();

需要说明的是由于Android模拟器不支持WIFI和蓝牙所以程序执行时返回的网卡状态都是WIFI_STATE_UNKNOWN:网卡未知的状态。此程序需要在真机上进行调试才会显示正确的运行结果。

打开WIFI网卡:

 

 
  1. Java代码  
  2.       
  3. WifiManager wifiManager =(WifiManager).getSystemService(Context.WIFI_SERVICE);            
  4. wifiManager.setWifiEnabled(true);            
  5.       

关闭WIFI网卡:

 

 
  1. Java代码  
  2.       
  3. WifiManager wifiManager =(WifiManager).getSystemService(Context.WIFI_SERVICE);              
  4. wifiManager.setWifiEnabled(false);      

 


     本文转自06peng 51CTO博客,原文链接:http://blog.51cto.com/06peng/962819,如需转载请自行联系原作者





相关文章
|
2月前
|
监控 安全 Android开发
【新手必读】Airtest测试Android手机常见的设置问题
【新手必读】Airtest测试Android手机常见的设置问题
|
3月前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
61 0
|
4月前
|
XML API Android开发
Android WIFI使用简述(上)
Android WIFI使用简述(上)
|
3天前
|
存储 Java Android开发
Android系统 设置第三方应用为默认Launcher实现和原理分析
Android系统 设置第三方应用为默认Launcher实现和原理分析
18 0
|
3月前
|
网络安全 Android开发
2023安卓逆向 -- 抓包环境设置(Charles+Postern)
2023安卓逆向 -- 抓包环境设置(Charles+Postern)
33 0
|
4月前
|
API 数据安全/隐私保护 Android开发
Android WIFI使用简述(下)
Android WIFI使用简述(下)
|
4月前
|
Android开发 网络架构
【Android App】检查手机连接WiFi信息以及扫描周围WiFi的讲解及实战(附源码和演示 超详细必看)
【Android App】检查手机连接WiFi信息以及扫描周围WiFi的讲解及实战(附源码和演示 超详细必看)
206 1
|
4月前
|
XML 监控 Java
Android App开发之事件交互Event中检测软键盘和物理按键讲解及实战(附源码 演示简单易懂)
Android App开发之事件交互Event中检测软键盘和物理按键讲解及实战(附源码 演示简单易懂)
135 0
|
4月前
|
XML 数据库 数据安全/隐私保护
Android App规范处理中版本设置、发布模式、给数据集SQLite加密的讲解及使用(附源码 超详细必看)
Android App规范处理中版本设置、发布模式、给数据集SQLite加密的讲解及使用(附源码 超详细必看)
43 0
|
Android开发
Android Wifi和蓝牙操作(二)
Android Wifi和蓝牙操作(二)
241 0