天天看点

ConnectivityManager

1 网络连接类型 ConnectivityManager

监听网络变化broadcat <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 

ConnectivityManager connec =  (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);    NetworkInfo info = connec.getActiveNetworkInfo();  //倘若手机目前不在网络的服务范围,则connec.getActiveNetworkInfo()会返回null //NetworkInfo []allinfo=  connec.getAllNetworkInfo();  String typeName = info.getTypeName(); //cmwap/cmnet/wifi/uniwap/uninet   info.getTypeName();     // 以何种方式连线 [WIFI] info.getState();        // 连线状态 [CONNECTED] info.isAvailable();     // 网络是否可用 [true] info.isConnected();     // 网络是否已经连接 [true] info.isConnectedOrConnecting(); // 网络是否已经连接或者连接中 [true] info.isFailover();      // 网络是否有问题 [false] info.isRoaming();       // 网络是否在漫游中 [false] 需要加的权限: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission> 2  PhoneStateListener 很多应用PhoneStateListener都是监听来电去电,PhoneStateListener还可以监听网络断开、正在连接和连接成功。 final TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);     mTelephonyMgr.listen(new PhoneStateListener(){                              @Override       public void onDataConnectionStateChanged(int state) {           switch(state){               case TelephonyManager.DATA_DISCONNECTED://网络断开                   break;               case TelephonyManager.DATA_CONNECTING://网络正在连接                   break;               case TelephonyManager.DATA_CONNECTED://网络连接上                   break;           }       }                                  }, PhoneStateListener.LISTEN_DATA_CONNECTION_STATE);  

转载于:https://www.cnblogs.com/wangtianxj/archive/2011/04/21/2023619.html