文档章节

WIFI状态发生改变监听

t_yapeng
 t_yapeng
发布于 2017/05/02 15:57
字数 221
阅读 9
收藏 0
public class MainActivity extends Activity {

    private TextView tv;
    protected BroadcastReceiver receiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            if (WifiManager.WIFI_STATE_CHANGED_ACTION.equals(intent.getAction())) {
                int wifiState = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE, 0);
                switch (wifiState) {
                    case WifiManager.WIFI_STATE_DISABLED:
                        tv.setText("WIFI_STATE_DISABLED");
                        break;
                    case WifiManager.WIFI_STATE_ENABLED:
                        tv.setText("WIFI_STATE_ENABLED");
                        break;
                }
            }
        }
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv = (TextView) findViewById(R.id.tv);
    }

    @Override
    protected void onResume() {
        super.onResume();
        // 注册广播
        IntentFilter filter = new IntentFilter();
        filter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
        registerReceiver(receiver, filter);
    }
}
WIFI_STATE_DISABLED  : WIFI 不能使用,其值是: 1 WIFI_STATE_DISABLING WIFI 正在关闭中,由于 WIFI 关闭是需要这一个过程,这个状态就表示 WIFI 正在关闭的过程中,
                        其值是: 0 。
WIFI_STATE_ENABLED   : WIFI 可以使用,其值是: 3 。
WIFI_STATE_ENABLING  : WIFI 正在开启中,其道理同 WIFI_STATE_DISABLING ,其值是: 2 。
WIFI_STATE_UNKNOWN   :未知网卡状态,当手机或程序出现了一些错误引起 WIFI 不可用时会是这个状态,其值是: 4 
/**
 * 是否连接wifi
 *
 * @return
 */
public boolean isWifi() {
    ConnectivityManager connectivityManager = (ConnectivityManager) mActivity.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
    if (activeNetInfo != null && activeNetInfo.getType() == ConnectivityManager.TYPE_WIFI)
        return true;
    return false;
}

© 著作权归作者所有

共有 人打赏支持
t_yapeng
粉丝 3
博文 105
码字总数 30194
作品 0
Android工程师
手机网络切换后,app向服务器发送消息不成功

请问各位大牛,联网在线控制一些智能硬件时,单独网络下(如在wifi或者手机4g网络)app都能正常工作,但是网络一发生切换,app就实现不了功能,这种情况有什么解决方法呢? 我自己有两个想法...

记忆是沙子积不成的塔
2016/07/07
83
1
[Android] Android中WIFI开发总结二

MainActivity类:(处理wifi消息,加载UI) /** * 主界面 * @author ZHF * */public class MainActivity extends Activity implements EventHandler{ //消息事件 public static final int m_......

枫兮兮
2014/02/20
0
0
Android开发_判断网络连接是否可用

获取网络信息需要在AndroidManifest.xml文件中加入相应的权限。 1)判断是否有网络连接 复制代码代码如下: public boolean isNetworkConnected(Context context) { if (context != null) { C...

zhangty0223
2013/08/24
0
0
android学习笔记之Intent与BroadcastReceiver(四)

监听安卓本地的Broadcast Intents 比如时区的改变,数据连接状态,短信的接收,来电,底座模式,电池状态等等。 下面的列表介绍的是一些设备状态变化的Actions: 1.ACTIONBOOTCOMPLETED 当你的...

Chanimalx
2013/01/13
0
0
安卓中判断网络连接状态的方法

1)判断是否有网络连接 1publicboolean isNetworkConnected(Context context) { 2if (context != null) { 3 ConnectivityManager mConnectivityManager = (ConnectivityManager) context 4 ......

风吹翠竹
2014/05/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Cointext在阿根廷和土耳其推出比特币现金短信钱包

Cointext于10月15日开始在土耳其和阿根廷提供新的基于SMS的比特币现金钱包服务,这两个国家的加密货币使用量急剧上升,以应对严峻的经济形势。 移动钱包 通过短信处理BCH交易 “比特币是更好...

lpy411
20分钟前
1
0
大数据早课-0918

9.18日早课 1.全局搜索含有abc的文件名称或文件夹的命令 2.当前目录一般用什么表示 3.切换到上一次和上一层命令分别是什么 4.pwd是查看当前目录的什么 5.隐藏文件或文件夹的标识是什么? 怎样...

hnairdb
20分钟前
1
0
mybatis学习笔记一

一、mybaits需要的项目依赖 <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artif......

wuyiyi
21分钟前
2
0
CentOS6 安装 GraphicsMagick

1.安装相关依赖: yum install -y gcc libpng libjpeg libpng-devel libjpeg-devel ghostscript libtiff libtiff-devel freetype freetype-devel 2.下载并解压到目录/usr/local/ wget ft......

凯文加内特
23分钟前
1
0
RabbitMq集群使用Nginx做负载均衡

1.配置rabbitmq集群(可以参考前一篇RabbitMq之部署集群) 2.Nginx做负载均衡 注意:Nginx1.90版本后 新增了stream 模块用于一般的 TCP 代理和负载均衡,之前版本不支持 修改Nginx配置文件ngi...

zhaochaochao
28分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部