Android学习笔记之ConnectivityManager+NetWorkInfo
最后更新 2021-02-28 17:59 星期日 所属:
安卓教程 浏览:556
PS:眼见就要开学了,该收调整心态了.
学习内容:
1.ConnecivityManager
2.NetWorkInfo
ConnectivityManger:数据连接管理人员,用以管理方法Android机器设备的数据连接情况,之前也一直触碰,但是那时候沒有立即做有关的小结,也造成近期在写物品的情况下发觉了一些难题.
目前大家的手机上机器设备早已离不了了互联网,我们知道手机上机器设备中,网络连接的最常见的方法只不过二种,一种便是大家Mobile中的GPRS蜂窝数据互联网,另一种接口方式便是根据Wifi开展数据连接.每一种接口方式在Android內部都是有有关的管理方法.
最先上一张电路原理图
照片有点儿大.但是不耽搁,大家根据电路原理图就能搞清楚在其中的大道理.要想分辨当今互联网是不是联接,及其当今的网络状态是不是能用,则必定必须好多个全过程和流程.
1.最先根据数据连接管理人员获得管理职能
ConnectivityManager con = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
2.根据应用ConnectvitityManager中的有关方式获得数据连接的附加信息内容
有关ConnectivityManager的一些常见方式早已在图上强调,别的详尽方式请参考API
NetworkInfo networkInfo = connManager.getActiveNetworkInfo();
随后大家就可以根据有关的附加信息内容来实行大量的实际操作了,能够依据互联网状况来自动跳转到不一样的实际操作.对于实际的物品還是看大家的要求.例如对于不一样的数据连接方法自动跳转到不一样的网页页面..
Context context = listActivity.getApplicationContext(); ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);//获得系统软件的联接服务项目 NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();//获得互联网的联接状况 if(activeNetInfo.getType()==ConnectivityManager.TYPE_WIFI){ //WIFI互联网自动跳转的网页页面. }else if(activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE) { //3G互联网自动跳转的网页页面 }
或是是当分辨互联网沒有联接的情况下自动跳转到Android网络设定的网页页面之中通告客户手动式去网络连接.
boolean available = networkInfo.isAvailable(); if(available){ Toast.makeText(getApplicationContext(),"当今互联网能用",Toast.LENGTH_LONG).show(); }else{ // 自动跳转到wifi网络设定页面 startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS)); }