public void registerNetBroadcast(){
netBroadcastReceiver = new NetBroadcastReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
registerReceiver(netBroadcastReceiver, filter);
}
public class NetBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
//网络变化系统会发出ConnectivityManager.CONNECTIVITY_ACTION
if (intent.getAction().equals(ConnectivityManager.CONNECTIVITY_ACTION)){
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
if (activeNetworkInfo != null && activeNetworkInfo.isConnected()) {
Toast.makeText(context, "有网络了", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(context, "没有网络", Toast.LENGTH_LONG).show();
}
}
}
}
<receiver android:name=".broadcast.net.NetBroadcastReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />