1: netchangereceiver. Java
Public class netchangereceiver extends broadcastreceiver {@ override public void onreceive (context, intent) {connectivitymanager CM = (connectivitymanager) context. getsystemservice (context. connectivity_service); networkinfo netinfo = cm. getactivenetworkinfo (); If (netinfo! = NULL & netinfo. isavailable () {toast. maketext (context, "network connected", toast. length_short ). show ();} else {toast. maketext (context, "network not connected", toast. length_short ). show ();}}}
2: mainactivity. Java
Public class mainactivity extends activity {intentfilter; netchangereceiver; @ override protected void oncreate (bundle savedinstancestate) {super. oncreate (savedinstancestate); setcontentview (R. layout. activity_main); intentfilter = new intentfilter (); // after the current network changes, the system will issue a value of android.net. conn. connectivity_change broadcast, so listen to it intentfilter. addaction ("android.net. conn. connectivity_change "); netchangereceiver = new netchangereceiver (); // register registerreceiver (netchangereceiver, intentfilter);} @ override protected void ondestroy () {super. ondestroy (); // The dynamically registered broadcast receiver must cancel registration of unregisterreceiver (netchangereceiver );}}
3: Do not forget to declare permissions at last:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
Dynamically register a broadcast receiver to monitor network changes