网络状态获取
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络状态获取相关的知识,希望对你有一定的参考价值。
需要配置权限
在androidManifest.xml 中添加代码:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
2. 通过ConnectivityManager类来进行编码操作。
public void getNetworkState() { ConnectivityManager connManager = (ConnectivityManager) this.getSystemService(CONNECTIVITY_SERVICE); // 获取代表联网状态的NetWorkInfo对象 NetworkInfo networkInfo = connManager.getActiveNetworkInfo(); // 获取当前的网络连接是否可用 if (null == networkInfo) { Toast.makeText(this, "当前的网络连接不可用", Toast.LENGTH_SHORT).show(); //当网络不可用时,跳转到网络设置页面 startActivityForResult(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS), 1); } else { boolean available = networkInfo.isAvailable(); if (available) { Log.i("通知", "当前的网络连接可用"); Toast.makeText(this, "当前的网络连接可用", Toast.LENGTH_SHORT).show(); } else { Log.i("通知", "当前的网络连接不可用"); Toast.makeText(this, "当前的网络连接不可用", Toast.LENGTH_SHORT).show(); } } NetworkInfo.State state = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState(); if (NetworkInfo.State.CONNECTED == state) { Log.i("通知", "GPRS网络已连接"); Toast.makeText(this, "GPRS网络已连接", Toast.LENGTH_SHORT).show(); } state = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState(); if (NetworkInfo.State.CONNECTED == state) { Log.i("通知", "WIFI网络已连接"); Toast.makeText(this, "WIFI网络已连接", Toast.LENGTH_SHORT).show(); } //// 跳转到无线网络设置界面 // startActivity(new // Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS)); //// 跳转到无限wifi网络设置界面 // startActivity(new // Intent(android.provider.Settings.ACTION_WIFI_SETTINGS)); }
以上是关于网络状态获取的主要内容,如果未能解决你的问题,请参考以下文章