In onResume() I do:
registerReceiver(timeTickReceiver, new IntentFilter(Intent.ACTION_TIME_TICK));
and in onPause():
unregi
I guess there may be some states where the receiver is not actually registered before e.g. a user exits the app.
You might want to try adding a check for the receiver before running unregister, (I've done this in several cases):
protected void onPause() {
if(timeTickReceiver != null) {
unregisterReceiver(timeTickReceiver);
}
}