接收系统广播监听网络变化
16lz
2021-01-26
package com.example.broadcastdemo;import android.app.Activity;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.content.IntentFilter;import android.net.ConnectivityManager;import android.net.Network;import android.net.NetworkInfo;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.Toast;public class MainActivity extends Activity {private IntentFilter filter ;private NetwokChangeReceiver reciever ;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);filter = new IntentFilter() ;filter.addAction("android.net.conn.CONNECTIVITY_CHANGE");reciever = new NetwokChangeReceiver() ;registerReceiver(reciever, filter) ;}@Overrideprotected void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();unregisterReceiver(reciever);}class NetwokChangeReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {// TODO Auto-generated method stub//Toast.makeText(context, "网络环境发生改变", Toast.LENGTH_LONG).show();ConnectivityManager connectionManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE) ;NetworkInfo info = connectionManager.getActiveNetworkInfo() ;if(info != null && info.isAvailable()) {Toast.makeText(context, "网络可用", Toast.LENGTH_LONG).show();} else {Toast.makeText(context, "网络不可用", Toast.LENGTH_LONG).show();}}}}
别忘了在权限里声明
更多相关文章
- 使用TelephonyManager获取手机相关信息
- Android(安卓)监控网络状态
- 使用照相机开启闪光灯
- android工具类(2)NetWorkHelper 网络工具类
- android学习之wifimanager
- Android主流框架学习之旅
- android 下的内存状态获取
- 监听网络变化的广播
- Android(安卓)实现简单的手电筒(个人笔记)