WifiManager 实现Wifi快捷开关
wifi快捷快捷开关
wifi快捷快捷开关实现起开比Gprs开关简单,WifiManager有开放的API,想了解Gprs快捷开关的同学看这篇文章:http://blog.csdn.net/u013045971/article/details/41750977
获取wifi状态:
public static boolean isWifiEnable(Context context) {WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);return wifiManager.isWifiEnabled();}
设置wifi状态:
public static void setWifiEnable(Context context, boolean enable) {WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);wifiManager.setWifiEnabled(enable);}
那么跟Gprs开关一样,我们也需要根据监听一个标识去改变视图的状态(比如别的程序改变了wifi,你自己的视图是不是也要跟着变化呢?),之前的Gprs是通过监听database来改变视图的状态,而wifi就不需要那么麻烦了,直接通过广播来监听状态。直接在接收器中改变你的视图状态就ok了。
如下:
class ChangedReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {String action = intent.getAction(); if (action.equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {int e = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE, 0);//这里的广播是接受到wifi的开和关状态//WIFI_STATE_DISABLED 已关闭//WIFI_STATE_DISABLING 正在关闭//WIFI_STATE_ENABLED 已打开//WIFI_STATE_ENABLING 正在打开//WIFI_STATE_UNKNOWN 未知switch (e) {case WifiManager.WIFI_STATE_DISABLED:Log.i("ABC", "_DISABLED");break;case WifiManager.WIFI_STATE_DISABLING:Log.i("ABC", "_DISABLING");break;case WifiManager.WIFI_STATE_ENABLED:Log.i("ABC", "_ENABLED");break;case WifiManager.WIFI_STATE_ENABLING:Log.i("ABC", "_ENABLING");break;case WifiManager.WIFI_STATE_UNKNOWN:Log.i("ABC", "_UNKNOWN");break;default:break;}}if (action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {//这里的广播是表示wifi链接到一个正常的路由 链接到正常的路由之后才可以正常的获取wifi的 名称 ,IP,信号强度之类的参数WifiManager manager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);Log.i("ABC", "_ok" + manager.getConnectionInfo().getSSID());}}}
WifiManager 实现Wifi快捷开关相关推荐
- Android 9.0 SystemUI 下拉状态栏快捷开关
SystemUI 下拉状态栏快捷开关是 QSPanel,qs_panel.xml,@+id/quick_settings_panel,本篇文章就来看看这些快捷开关是如何呈现的以及如何新增一个快捷开关? ...
- android去掉便携式wifi热点,Android 获取便携式wifi热点开关状态、热点开启与关闭...
最近做了这两个功能: 1.获取便携式wifi热点开关状态: 2.热点的开启与关闭. 第二个功能就不用说了,百度一搜一大把:第一个功能,在百度基本找不到,最后我是在google找到的,getWifiAp ...
- wifi mesh 开关
什么是wifi mesh WIFI mesh是建立在wifi基础上的一套网络协议.ESP-WIFI-MESH 允许分布在大范围区域内(室内和室外)的大量设备(下文称节点)在同一个 WLAN(无线局域网 ...
- SystemUI添加第三方快捷开关时灰显问题分析
作者:neek.chen Android7.0上不仅有默认的快捷快关(QSTile),也允许客户自行添加第三方快捷开关(CustomTile).本文只介绍在绑定第三方CustomTile时遇到的间歇性 ...
- 腾达f3虚拟服务器设置,高手指南win7系统腾达F3路由器设置WIFI定时开关的法子
许多win7系统用户在工作中经常需要对win7系统腾达F3路由器设置WIFI定时开关进行设置,比如近日有用户到本站反映说win7系统腾达F3路由器设置WIFI定时开关的问题,但是却不知道要怎么设置wi ...
- android 获取快捷开关_干货水帖:Android 6.0 如何从快速开关面板启动微信扫一扫?...
自从 iOS 开放了 Widget 接口之后,很多「勇士」就探索 Widget 的各种可能性.比如前段时间很火的 Steve,让你不开锁屏就能玩到 Chrome 中内置的恐龙跳小游戏. iOS 的 W ...
- WIFi局域网开关控制实现-ESP8266 物联网 android studio arduino
WIFi局域网开关控制实现-ESP8266 物联网 目的: 手机.被控继电器模块连接家里路由器,通过手机App控制继电器的开与断,可设置三种定时模式,即延时开.工作时间.关闭延时.可以控制单一继电器通 ...
- Android通知栏增加快捷开关的技术实现
我们通常可以在通知栏上看到"飞行模式"."移动数据"."屏幕录制"等开关按钮,这些按钮都属于通知栏上的快捷开关,点击快捷开关可以轻易调用某种 ...
- Android 8.0 SystemUI下拉状态栏快捷开关
基于工作需要,基本是在Android源生代码上进行开发,从android 5.0到现在8.0,这两年碰到各种问题发现关于Android源生发开方面的特别少.于是想着开始把遇到的.解决的问题写下来,或许 ...
- android wifi软开关,rfkill 无线设备软开关
最近在调试无线软AP软件 hostapd 时遇到个错误,总是无法启动服务. 调试输出如下:[root@server ~]# /usr/sbin/hostapd /etc/hostapd/hostapd ...
最新文章
- 矩阵乘法的性能提升 AutoKernel
- php 实现对称加密算法,PHP实现简单的对称加密和解密方法
- 逻辑回归阈值_逻辑回归or线性回归,傻傻分不清楚
- css美化单选款、复选框
- 阿里云OSS linux使用备忘录
- 软件交互性友好性_您应该知道的8个环境友好的开放软件项目
- 常见Web技术之间的关系,你知道多少?
- 人工智能芯片的前世与今生
- (SQL)删除表中字段有中文的记录
- “MySQL 服务正在启动 . MySQL 服务无法启动。 服务没有报告任何错误。”的解决方案
- Vue中,v-show与v-if的区别
- 【MFC开发(8)】下拉框控件Combo Box
- 擅长C(DAY 70)
- C语言——超市商品管理系统
- VB中On Error Resume Next 什么意思,一般在什么情况下使用
- 天创速盈:拼多多商家提升投产比有什么技巧?
- Unity 微信小游戏转回WEBGL发布设置
- 防火墙的双机热备技术(上下行接口连接三层设备)
- 学python人工智能电脑要什么配置_学Python需要什么配置的电脑?
- 服务器配置高性能好的笔记本,配置高能力强 四款可靠企业级服务器推荐