在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()方法取消注冊網絡監聽器。