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.getAction(), 1).show();
    ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo mobileInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
    NetworkInfo wifiInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
    NetworkInfo activeInfo = manager.getActiveNetworkInfo();
    Toast.makeText(context, "mobile:"+mobileInfo.isConnected()+"\n"+"wifi:"+wifiInfo.isConnected()
            +"\n"+"active:"+activeInfo.getTypeName(), 1).show();
  } //如果无网络连接activeInfo为null
}

在清单文件中注册 BroadcastReceiver

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

要读取网络状态记得要加权限

代码如下:

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

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android通信方式总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

(0)

相关推荐

  • Android 监听网络状态方法详解

    Android 监听网络状态方法详解 一.加入网络权限 获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission Android:name="android.permission.ACCESS_NETWORK_STATE" /> 二.判断手机网络的几个方案 1)判断是否有网络连接 public boolean isMobileConnected(Context context) { if (context != nul

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

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

  • Android 动态注册监听网络变化实例详解

    Android 动态注册监听网络变化实例详解 新建一个BroadcastTest项目,然后修改MainActivity中的代码,如下: public class MainActivity extends AppCompatActivity { private IntentFilter intentFilter; private NetworkChangeReceiver networkChangeReceiver; @Override protected void onCreate(Bundle

  • 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使用BroadcastReceiver监听网络连接状态的改变

    只需要实现下面2段代码即可实现对网络连接状态的监听,千万别忘了在Manifest.xml里面添加网络访问权限哦. 1.定义广播接收器 NetState.java package huaxa.it.map.net; import huaxa.it.map.demo.MapDemo; import com.baidu.mapapi.map.MapView; import android.content.BroadcastReceiver; import android.content.Context

  • Android 利用广播监听usb连接状态(变化情况)

    废话不多说了,直接给大家贴代码了,具体代码如下所示: package com.lgs.test.testcode.receiver; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.widget.Toast; /** * Create

  • Android编程监听APK安装与删除等过程的方法

    本文实例讲述了Android编程监听APK安装与删除等过程的方法.分享给大家供大家参考,具体如下: 软件下载后的一系列动作监听:先前是通过Service监听扫描获取状态,以后用这个方法测试使用 import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.widget.Toast; public class getBro

  • android获取监听SD Card状态的方法

    本文实例讲述了android获取监听SD Card状态的方法.分享给大家供大家参考.具体分析如下: 1. 注册StorageEventListener来监听SD卡状态即onStorageStateChanged()方法,当sd卡状态改变时,调用该方法. 复制代码 代码如下: public void onStorageStateChanged(String path,String oldState,String newState){ if (newState.equals(Environment.

  • Android实现监听电话呼叫状态的方法

    本文实例讲述了Android实现监听电话呼叫状态的方法.分享给大家供大家参考.具体如下: 在清单文件AndroidManifest.xml中添加权限: 复制代码 代码如下: <uses-permission android:name="android.permission.READ_PHONE_STATE"/> java代码如下: // 取得电话服务 TelephonyManager telManager = (TelephonyManager) getSystemServ

  • Android编程实现获取当前连接wifi名字的方法

    本文实例讲述了Android编程实现获取当前连接wifi名字的方法.分享给大家供大家参考,具体如下: WifiManager wifiMgr = (WifiManager) mActivity.getSystemService(Context.WIFI_SERVICE); int wifiState = wifiMgr.getWifiState(); WifiInfo info = wifiMgr.getConnectionInfo(); String wifiId = info != null

  • Android 解决监听home键的几种方法

    Android 解决监听home键的几种方法 前言: 以下两种方法可以完美解决监听back键,home键,多任务键(最近任务键). 一.使用注册广播监听home键.多任务键 演示图 创建一个广播代码如下: class InnerRecevier extends BroadcastReceiver { final String SYSTEM_DIALOG_REASON_KEY = "reason"; final String SYSTEM_DIALOG_REASON_RECENT_APP

  • Android获取监听SD卡状态

    项目简介: 该项目监听SD卡状态 详细介绍: 部署该应用后,当SD卡状态发送改变时,系统会发出吐司通知用户 该应用涉及到的知识有: 1.Android的四大组件之一:广播接收者的使用 2.SD卡状态的广播 注意: 1.只有在 2.x 模拟器上才能对SD卡进行操作,所以该应用应当部署在 2.x 的模拟器上 2.一个广播接收者是可以接受多个广播的,直接添加多个action就可以了 3.SD卡不同的状态有不同的广播,主要有三种: <action android:name="android.int

随机推荐