首先搬出两个重要的类
ConnectivityManager:用来获取网络连接情况
NetworkInfo:用来获取网络类型(wifi或者数据网络)
判断是wifi或者数据网络:
private static final String DEBUG_TAG = "NetworkStatusExample";
...
ConnectivityManager connMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
boolean isWifiConn = networkInfo.isConnected();
networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
boolean isMobileConn = networkInfo.isConnected();
Log.d(DEBUG_TAG, "Wifi connected: " + isWifiConn);
Log.d(DEBUG_TAG, "Mobile connected: " + isMobileConn);
还有个更简单的方法getActiveNetworkInfo(),获取当前网络
NetworkInfo activeInfo = connMgr.getActiveNetworkInfo();
activeInfo.getType()获取网络类型 ( ConnectivityManager.TYPE_WIFI或者ConnectivityManager.TYPE_MOBILE)