package com.github.curioustechizen.safereg; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.IntentFilter; import android.os.Bundle; public class SampleRecommendedActivity extends Activity { private BroadcastReceiver mConnectivityReceiver, mBatteryReceiver; private IntentFilter mConnectivityFilter, mBatteryFilter; private ReceiverRegistrar mReceiverRegistrar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); /* * Initialize the BroadcastReceivers here and Setup the IntentFilters here */ mReceiverRegistrar = new ReceiverRegistrar(this); } @Override protected void onResume() { super.onResume(); /* * Register your receivers in onResume */ mReceiverRegistrar.safeRegisterReceiver(mBatteryReceiver, mBatteryFilter); mReceiverRegistrar.safeRegisterReceiver(mConnectivityReceiver, mConnectivityFilter); } private void onBatteryLow() { /* * Maybe when the battery goes low you want to unregister a few * receivers? */ mReceiverRegistrar.safeUnregisterReceiver(mConnectivityReceiver); } @Override protected void onPause() { super.onPause(); /* * In onPause, unregister all remaining registered receivers */ mReceiverRegistrar.safeUnregisterAllReceivers(); } }