在Android中使用ConnectivityManager可以获取设备的网络连接信息并监听网络连接状态的变化。以下是一个简单的示例:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
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()方法取消注册网络监听器。