在Android中使用ConnectivityManager可以获取设备的网络连接信息并监听网络连接状态的变化。以下是一个简单的示例:
- 首先,在AndroidManifest.xml文件中添加以下权限:
- 在代码中获取ConnectivityManager实例:
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
- 获取当前网络连接信息:
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); if (networkInfo != null && networkInfo.isConnected()) { // 网络已连接 } else { // 网络未连接 }
- 监听网络连接状态的变化:
ConnectivityManager.NetworkCallback networkCallback = new ConnectivityManager.NetworkCallback() { @Override public void onAvailable(Network network) { super.onAvailable(network); // 网络连接可用 } @Override public void onLost(Network network) { super.onLost(network); // 网络连接丢失 } }; connectivityManager.registerDefaultNetworkCallback(networkCallback);
记得在不需要监听网络连接状态变化时,调用unregisterNetworkCallback()方法取消注册网络监听器。