Android(安卓)监控网络状态
16lz
2022-05-31
Android网络应用程序开发中,经常要判断网络连接是否可用,因此经常有必要监听网络状态的变化。android的网络状态监听可以用BroadcastReceiver来接收网络状态改变的广播,具体实现如下:
@Overridepublic void onReceive(Context context, Intent intent) {Log.e(TAG, "网络状态改变");boolean success = false;//获得网络连接服务ConnectivityManager connManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);// State state = connManager.getActiveNetworkInfo().getState();State state = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState(); // 获取网络连接状态if (State.CONNECTED == state) { // 判断是否正在使用WIFI网络success = true;}state = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState(); // 获取网络连接状态if (State.CONNECTED != state) { // 判断是否正在使用GPRS网络success = true;}if (!success) {Toast.makeText(LocationMapActivity.this, "您的网络连接已中断", Toast.LENGTH_LONG).show();} }在Activity的onCreate中:
//注册网络监听IntentFilter filter = new IntentFilter(); filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);registerReceiver(mNetworkStateReceiver, filter);//在Activity中的onDestroy中:'unregisterReceiver(mNetworkStateReceiver); //取消监听
更多相关文章
- 【Android】volley网络框架的文件下载
- [Android]在Avtivity中注册监听器
- Android监听来电/挂断/接听
- android HttpClient网络通信工具类基于XML
- android隐藏标题栏和状态
- Android短信拦截解决方案
- Android(安卓)无法接收开机广播的问题
- Android中的设计模式--建造者模式
- android 完美获取状态栏高度