Broadcast Receiver监听网络状态
来源:互联网 发布:淘宝北京新大陆可靠吗 编辑:程序博客网 时间:2024/06/14 16:26
在代码中动态注册,不需要在AndroidManifest.xml里静态注册,静态注册在不打开App的情况下,有可以接收到广播。
public class MainActivity extends Activity {private IntentFilter intentFilter;private NetworkChangeReceiver networkChangeReceiver;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); intentFilter = new IntentFilter(); intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");//监听网络的状态;网络状态改变就会被调动。 networkChangeReceiver = new NetworkChangeReceiver(); registerReceiver(networkChangeReceiver, intentFilter);}@Overrideprotected void onDestroy() { super.onDestroy(); unregisterReceiver(networkChangeReceiver); }}
创建NetworkChangeReceiver类继承BroadcaseReceiver
class NetworkChangeReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {//枚举 enum NetworkStatus {DisConnect,Mobile,Wifi} ConfigConstant.NetworkStatus status =getConnectType(); switch(status){ case DisConnect: break; case Mobile: break; case Wifi: break; }}/**获取网络状态,*/private ConfigConstant.NetworkStatus getConnectType() { ConnectivityManager connMgr =(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo activeInfo = connMgr.getActiveNetworkInfo(); if (activeInfo != null && activeInfo.isConnected()){ if (activeInfo.getType() == ConnectivityManager.TYPE_WIFI) return ConfigConstant.NetworkStatus.Wifi; else if (activeInfo.getType() == ConnectivityManager.TYPE_MOBILE) return ConfigConstant.NetworkStatus.Mobile; } return ConfigConstant.NetworkStatus.DisConnect;}
网络状态一旦发生改变,会调用NetworkChangeReceiver 的onReceive(),再去获取网络状态。
0 0
- Broadcast Receiver监听网络状态
- Android:使用Broadcast Receiver监听网络连接状态的改变
- 4.1.3.3 Android 网络状态监听的静态广播接受者和动态广播接受者Broadcast-Receiver
- android 通过Service和Receiver来监听网络状态
- android 通过Service和Receiver来监听网络状态
- Broadcast监听网络状态,ping判断网络是否可用
- Broadcast监听网络状态,ping判断网络是否可用
- broadcast receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- Broadcast Receiver
- css expression是什么鬼
- ccah-500 第20题 What is the result when you execute: hadoop jar SampleJar MyClass
- IO流—字节输入流、输出流
- PERL 语言中的q,qw,qr,qx,qq......符号用法总结
- CSDN-markdown编辑器使用简介
- Broadcast Receiver监听网络状态
- jquery cookie操作
- tomcat 脚本以及JVM参数配置
- 并查集_森林_含秩的判断和路径优化
- 表的连接查询
- 为什么空类占一个字节?
- ORA-28000 用户被锁解锁
- 了解Zones
- 13. Roman to Integer