网络状态变化
来源:互联网 发布:mysql root权限 编辑:程序博客网 时间:2024/06/16 14:20
在某些场合,比如用户浏览网络信息时,网络突然断开,我们要及时地提醒用户网络已断开。要实现这个功能,我们可以接收网络状态改变这样一条广播,当由连接状态变为断开状态时,系统就会发送一条广播,我们接收到之后,再通过网络的状态做出相应的操作。下面就来实现一下这个功能:
- package com.scott.receiver;
- import android.content.BroadcastReceiver;
- import android.content.Context;
- import android.content.Intent;
- import android.net.ConnectivityManager;
- import android.net.NetworkInfo;
- import android.util.Log;
- import android.widget.Toast;
- public class NetworkStateReceiver extends BroadcastReceiver {
- private static final String TAG = "NetworkStateReceiver";
- @Override
- public void onReceive(Context context, Intent intent) {
- Log.i(TAG, "network state changed.");
- if (!isNetworkAvailable(context)) {
- Toast.makeText(context, "network disconnected!", 0).show();
- }
- }
- /**
- * 网络是否可用
- *
- * @param context
- * @return
- */
- public static boolean isNetworkAvailable(Context context) {
- ConnectivityManager mgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
- NetworkInfo[] info = mgr.getAllNetworkInfo();
- if (info != null) {
- for (int i = 0; i < info.length; i++) {
- if (info[i].getState() == NetworkInfo.State.CONNECTED) {
- return true;
- }
- }
- }
- return false;
- }
- }
- <receiver android:name=".NetworkStateReceiver">
- <intent-filter>
- <action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
- </receiver>
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
我们可以测试一下,比如关闭WiFi,看看有什么效果。
参考文档:http://blog.csdn.net/liuhe688/article/details/6955668
0 0
- BroadcastReceiver 网络状态变化
- 网络状态变化
- 监听网络状态变化
- Android获取网络状态变化
- 监听手机网络状态变化
- Activity提示网络状态变化
- Android监听网络状态变化
- 手机网络状态变化监听
- Linphone 网络状态变化分析
- Android:检测网络状态&监听网络变化
- Android:检测网络状态&监听网络变化
- Android监听网络连接状态变化
- android接收广播监听网络状态变化
- netlink示例程序:监听网络状态变化
- iOS监听网络状态的变化
- android 监听网络连接状态的变化
- 关于监听网络状态变化,记录而已
- 简单 android 广播监听网络状态变化
- C++构造与析构(9) - 默认构造函数
- PagerSlidingTabStrip 源码解析
- 第12周项目3—日期时间类
- 开机启动服务
- FPGA上的小逻辑算法总结
- 网络状态变化
- 电量变化
- 嵌入式软件开发培训笔记——u-boot-2011.09的移植
- (15.1.4)什么叫大数据?什么叫O2O?什么叫蓝海?什么叫红海?什么叫互联网思维?什么叫众筹?
- CKFinder 2.4.1清除主界面中的版权信息
- SURF、SIFT、Fast角点检测的代码(opencv)
- iOS开发系列--打造自己的“美图秀秀”
- java io的理解
- 养成常写博客的习惯