Android开发学习:[33]Android查询网络状态
1、同样的我们首先打开Android Studio新建一个Activity并设置为启动项。这里我们需要在清单文件中添加访问网络及其状态的权限。<uses-permission android:name="android.permission.INTERNET"></uses-permission><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
![Android开发学习:[33]Android查询网络状态](https://exp-picture.cdn.bcebos.com/de9bfa3b3b8602218f8d71e5d8bbf82065fb7272.jpg)
3、然后我们在后台代码里面注册这些控件,然后添加点击事件,将各种网络信息显示在Te垓矗梅吒xtView上面代码如下:protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_connectivity_manager); textView= (TextView) findViewById(R.id.textViewConnectivityManagerDetail); button= (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { StringBuffer stringBuffer=new StringBuffer(""); //实例化ConnectivityManager对象 ConnectivityManager connectivityManager= (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); //获得当前可用网络的网络信息数据 NetworkInfo networkInfo=connectivityManager.getActiveNetworkInfo(); if(networkInfo!=null){ //网络是否可用 stringBuffer.append("isAvailable: "+(networkInfo.isAvailable()?"yes":"no")+"\n"); //获取网络类型 stringBuffer.append("NetwortType: "+networkInfo.getTypeName()+"\n"); //获取当前网络链接的子类型(如果存在) stringBuffer.append("SubType: "+networkInfo.getSubtypeName()+"\n"); //获取网络链接的初略状态 stringBuffer.append("Details: "+networkInfo.getState().toString()+"\n"); //获取网络链接的额外信息 stringBuffer.append(networkInfo.getExtraInfo()+"\n"); //获取是否漫游 stringBuffer.append(networkInfo.isRoaming()?"yes":"no"+"\n"); textView.setText(stringBuffer); }else{ //如果没有可用的网络链接,给予提示 textView.setText("no available to use"); } } }); }下图是点击事件的重要代码
![Android开发学习:[33]Android查询网络状态](https://exp-picture.cdn.bcebos.com/04201aa355e983ae230dbb9968efe07815316972.jpg)
![Android开发学习:[33]Android查询网络状态](https://exp-picture.cdn.bcebos.com/332d496699cf0253fab9c1366b36e29146e85f72.jpg)
6、最后我们的虚拟机开启后如图所示
![Android开发学习:[33]Android查询网络状态](https://exp-picture.cdn.bcebos.com/31097f43d7d44831e7311414d40f822b75ee5172.jpg)