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. <uses-permissionandroid:name="android.permission.CHANGE_NETWORK_STATE"></uses-permission>
  3. <uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
  4. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
  5. <uses-permissionandroid: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. WifiManagerwifiManager=(WifiManager).getSystemService(Context.WIFI_SERVICE);
  3. wifiManager.setWifiEnabled(true);

关闭WIFI网卡:

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

更多相关文章

  1. Android(安卓)仿淘宝订单状态tab(可以滑动、带红点badge)
  2. Android平台上无线网卡自动扫描并关联AP的实现
  3. Android(安卓)静态ip的dns设置
  4. [转]android 系统权限大全的简介与内容
  5. Android(安卓)SystemProperties
  6. android在apk中获取root权限,并执行命令
  7. Android权限机制总结与常见权限不足问题分析
  8. Android(安卓)跳转权限设置界面的终极适配(适配各大定制 ROM)
  9. 当透明状态栏遇到输入框

随机推荐

  1. Apache Spark 背后公司 Databricks 完成F
  2. 给你梳理了 44 个 CSS 精选知识点
  3. Vue自学之路4-vue模版语法(v-clock)
  4. DolphinDB模块复用教程
  5. 第五课 实例演示flex容器中的四个属性的
  6. 宝塔面板非https站点使用https访问跳转其
  7. grid的描述
  8. 排查指南 | 当 mPaaS 小程序提示“应用更
  9. 技术干货 | mPaaS 框架下如何使用 Crash
  10. 排查指南 | mPaaS 小程序被卡在了三个蓝