Android中监听系统网络连接打开或者关闭的实现代码

很简单,所以直接看代码


代码如下:

package xxx;

import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
import android.net.ConnectivityManager; 
import android.net.NetworkInfo;

代码如下:

public class NetstateReceiver extends BroadcastReceiver {

@Override 
    public void onReceive(Context context, Intent intent) { 
        ConnectivityManager manager = (ConnectivityManager) context 
                .getSystemService(Context.CONNECTIVITY_SERVICE); 
        NetworkInfo gprs = manager 
                .getNetworkInfo(ConnectivityManager.TYPE_MOBILE); 
        NetworkInfo wifi = manager 
                .getNetworkInfo(ConnectivityManager.TYPE_WIFI); 
        if (!gprs.isConnected() && !wifi.isConnected()) { 
            // network closed  
        } else { 
            // network opend


    }

}

代码自定义了一个BroadcastReceiver,是想监听网络设置变化的事件。

Manifest文件里注册监听。


代码如下:

<receiver android:name="xxx.NetstateReceiver"> 
    <intent-filter> 
        <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 
    </intent-filter> 
</receiver>

还需要加入权限信息。


代码如下:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

(0)

相关推荐

  • Android中判断网络是否连接实例详解

    Android中判断网络是否连接实例详解 在android中,如何监测网络的状态呢,这个有的时候也是十分重要的,方法如下: public class ConnectionDetector { private Context _context; public ConnectionDetector(Context context){ this._context = context; } public boolean isConnectingToInternet(){ ConnectivityMana

  • Android 网络状态实时监听代码实例(一)

    其实手机在网络方面的的监听也比较重要,有时候我们必须实时监控这个程序的实时网络状态,android在网络断开与连接的时候都会发出广播,我们通过接收系统的广播就可以实现网络的监听. 1.添加访问网络和获取网络状态的权限 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permissio

  • Android编程判断是否连接网络的方法【WiFi及3G判断】

    本文实例讲述了Android编程判断是否连接网络的方法.分享给大家供大家参考,具体如下: 判断wifi网络是否链接: public static boolean isWiFiActive(Context inContext) { WifiManager mWifiManager = (WifiManager) inContext .getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = mWifiManager.getConnect

  • Android编程获取网络连接方式及判断手机卡所属运营商的方法

    本文实例讲述了Android编程获取网络连接方式及判断手机卡所属运营商的方法.分享给大家供大家参考,具体如下: 问题:项目中写的网络模块,感觉有点乱:两套代码 --模拟器.真机,维护起来十分麻烦. 解决办法:代码自动去检查到那种网络环境,然后调用不同的联网方式. 查看了模拟器上默认的接入点:移动网络 -- APN = "internet" 1.通过获取apn的名称,来判断网络 // 获取Mobile网络下的cmwap.cmnet private int getCurrentApnInU

  • Android网络状态实时监听实例代码(二)

    上篇文章给大家介绍了Android 网络状态实时监听代码实例(一),感兴趣的朋友可以点击了解详情,本文接着给大家介绍android网络状态监听相关知识,具体内容如下所示: 在开发android应用时,涉及到要进行网络访问,时常需要进行网络状态的检查,以提供给用户必要的提醒.一般可以通过ConnectivityManager来完成该工作. ConnectivityManager有四个主要任务: 1.监听手机网络状态(包括GPRS,WIFI, UMTS等) 2.手机状态发生改变时,发送广播 3.当一

  • Android 广播监听网络状态详解及实例代码

    Android 广播监听网络状态 我们在做多线程下载的时候,或者是在加载h5界面的时候,常常会遇到网络状态不好或者断网的时候,在这或者当我们的应用程序启动没有退出的时候,我们就需要对网络状态监听加以判断. 这时候,我们一般情况下,两种方式进行处理. 第一: 开启服务. 第二:发送广播的形式. 建议采用方法二. 源代码如下: 广播: /** * 有网络的广播 */ BroadcastReceiver connectionReceiver = new BroadcastReceiver() { @O

  • Android 实时监测(监听)网络连接状态变化

    看了网上的很多,都不是自己想要的.所以自己就参考着写了一个. 实现这个的方法很多,我是想的这种,如果哪有不足,有bug的地方希望大家指出,共同进步.... 先简单说一下思路:网络变化时系统会发出广播.所以我们监听这个广播,利用接口回调通知activity做相应的操作就好了.. 步骤: 1.写个判断网络的工具类. 2.先写个类继承BroadcastReceiver.(不要忘记在清单文件中注册)           (谢谢ITzxl的提醒)需要在清单文件中添加权限<uses-permission a

  • android检测网络连接状态示例讲解

    Android连接首先,要判断网络状态,需要有相应的权限,下面为权限代码(AndroidManifest.xml): 复制代码 代码如下: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="android.permission.INTERNET"/> 然后,检测网络状态是否可用 复制代码

  • Android编程监听网络连接状态改变的方法

    本文实例讲述了Android编程监听网络连接状态改变的方法.分享给大家供大家参考,具体如下: BroadcastReceiver public class MyReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub //Toast.makeText(context, intent

  • Android编程判断网络连接是否可用的方法

    本文实例讲述了Android编程判断网络连接是否可用的方法.分享给大家供大家参考,具体如下: 为了提高用户体验,我们在开发 android 应用的过程需要联网获取数据的时候我们首先要做的一步就是: 1.判断当前手机是否打开了网络 2.打开了网络是否可以上网 然后再去执行联网逻辑,避免没联网做不必要的工作! 通常情况下,我们是这样判断的 public static boolean isNetAvailable(Context context) { ConnectivityManager conne

  • Android中监听判断网络连接状态的方法

    在无网或网速差的状态下,没必要去连接服务器. 你可以使用 ConnectivityManager 来判断是否连到网络,以及网络类型. 判断是否有网络连接 下面的代码用ConnectivityManager查询是活动网络连接判断是否有Internet连接. 复制代码 代码如下: ConnectivityManager cm =         (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);  

随机推荐