安卓网络状态监听广播代码
时间: 2023-11-12 11:13:50 浏览: 36
以下是一个简单的安卓网络状态监听广播的代码示例:
```
public class NetworkStateReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
if (isConnected) {
// 网络连接上了
Toast.makeText(context, "网络连接已经恢复", Toast.LENGTH_SHORT).show();
} else {
// 网络断开了
Toast.makeText(context, "网络已经断开,请检查网络设置", Toast.LENGTH_SHORT).show();
}
}
}
```
在 AndroidManifest.xml 文件中声明广播接收器:
```
<receiver android:name=".NetworkStateReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
```
当网络状态发生变化时,系统会发送 CONNECTIVITY_CHANGE 的广播,我们就可以在 NetworkStateReceiver 接收到该广播后进行相应的处理。