Android判断网络连接

来源:互联网 发布:rbf神经网络 python 编辑:程序博客网 时间:2024/06/05 08:02

1.判断当前手机是否已经联网
(1) 添加权限

(2)具体实现

public boolean isNetworkConnected(Context context)    {        //API21前后判断的方法有点区别        ConnectivityManager cn=(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);        if(Build.VERSION.SDK_INT<Build.VERSION_CODES.LOLLIPOP)        {            NetworkInfo[] networks=cn.getAllNetworkInfo();            for(int i=0;i<networks.length;i++)            {                if(networks[i].getState()== NetworkInfo.State.CONNECTED)                {                     return true;                }            }            return false;        }else{            Network[] networks=cn.getAllNetworks();            for(int i=0;i<networks.length;i++)            {                if(cn.getNetworkInfo(networks[i]).getState()==NetworkInfo.State.CONNECTED)                {                   return true;                }            }            return false;        }    }

2.判断当前是否连接的是wifi,如果是,打印出wifi对应的信息。
(1) 添加权限

(2) 具体实现

ConnectivityManager cn=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);        NetworkInfo info=cn.getActiveNetworkInfo();        if(info!=null)        {            if(info.getType()==1)            {                WifiManager wm=(WifiManager)getSystemService(Context.WIFI_SERVICE);                WifiInfo wf=wm.getConnectionInfo();                Log.e("MainActivity","wifi的名称为:"+wf.getSSID());                Log.e("MainActivity","得到的名字为:"+wf.getBSSID());                Log.e("MainActitiy","Mac地址:"+wf.getMacAddress());                Log.e("MainActivity","连接速度:"+wf.getLinkSpeed());                Log.e("MainActivity","NetWorkId:"+wf.getNetworkId());                Log.e("MainActivity","Ip:"+wf.getIpAddress());                Log.e("MainActivity","HiddenSSID:"+wf.getHiddenSSID());                Log.e("MainActivity","Rssi:"+wf.getRssi());            }        }else{              Log.e("MainActivity","当前没有网络连接");        }
0 0
原创粉丝点击