zoukankan      html  css  js  c++  java
  • Android开发 网络检测(使用广播监听)

    比较简单的检测网络:

     1 /**
     2  * 检查网络是否连接
     3  * @param context
     4  * @return
     5  */
     6 public boolean isNetworkConnected(Context context) {
     7     if (context != null) {
     8         ConnectivityManager mConnectivityManager = (ConnectivityManager) context
     9                 .getSystemService(Context.CONNECTIVITY_SERVICE);
    10         // 获取有效的网络信息
    11         NetworkInfo mNetworkInfo = mConnectivityManager
    12                 .getActiveNetworkInfo();
    13         if (mNetworkInfo != null) {
    14             // 返回网络是否可用
    15             return mNetworkInfo.isAvailable();
    16         }
    17     }
    18     return false;
    19 }

    用广播的方式检测网络连接状态,以及接入点的名称:

     1 /**
     2  * 网络连接广播接收
     3  * @author Administrator
     4  *
     5  */
     6 private class CheckNetStateRecevicer extends BroadcastReceiver {
     7  
     8     @Override
     9     public void onReceive(Context context, Intent intent) {
    10         // TODO Auto-generated method stub
    11         if (intent.getAction().equals(
    12                 ConnectivityManager.CONNECTIVITY_ACTION)) {
    13             Log.i("Info", "网络状态已经改变");
    14             cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);  // 获得网络连接服务
    15             networkInfo = cm.getActiveNetworkInfo();    // 获得可用的网络信息
    16  
    17             if (networkInfo != null
    18                     && networkInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
    19                 String netId = networkInfo.getExtraInfo();    // 获得手机接入点的网络模式
    20                 Toast.makeText(context, "网络已连接至" + netId, Toast.LENGTH_SHORT)
    21                 .show();
    22             } else if (networkInfo != null
    23                     && networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
    24                 WifiManager wm = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    25                 String ssid = wm.getConnectionInfo().getSSID().toString();  // 获得WiFi接入点的名称
    26                 Toast.makeText(context, "网络已连接至" + ssid, Toast.LENGTH_SHORT)
    27                 .show();
    28             } else {
    29                 Toast.makeText(context, "网络出现异常", Toast.LENGTH_LONG).show();
    30             }
    31         }
    32  
    33     }
    34 }
  • 相关阅读:
    程序员写 2000 行 if else?领导:这个锅我不背
    var_dump
    CURL常用命令
    Socket阻塞模式和非阻塞模式的区别
    php框架之odp(一)
    git命令之git clone用法
    git push origin master和git push有什么区别?
    YouTube上最火的十个大数据视频
    Java两种核心机制
    Java四类八种数据类型
  • 原文地址:https://www.cnblogs.com/gxchexi/p/4569071.html
Copyright © 2011-2022 走看看