BroadcastReceiver not firing for network connection changes
I'm trying to listen for changes in network connectivity. My broadcast
receiver doesn't seem to be firing when I switch in or out of airplane
mode. I'm not sure if this is because I don't have it registered correctly
or if maybe airplane mode changes don't cause this to fire. Any advice is
appreciated. Thanks!
My manifest:
<receiver android:name=".NetworkReceiver" >
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
My broadcast receiver class:
public class NetworkReceiver extends BroadcastReceiver {
private SharedPreferences prefs;
private SharedPreferences.Editor prefEditor;
@Override
public void onReceive(Context context, Intent intent) {
prefs = PreferenceManager.getDefaultSharedPreferences(context);
prefEditor = prefs.edit();
Boolean has_connection = prefs.getBoolean("has_connection", false);
prefEditor.putBoolean("has_connection", !has_connection);
prefEditor.commit();
System.err.println("Network Receiver notified of a connectivity
change!");
System.err.println("New has_connection: " + !has_connection);
}
}
No comments:
Post a Comment