This has been driving me nuts for a while now.
Is there any way of reliably detecting if the home button has been pressed in an android application?
Failing
Override onUserLeaveHint() in the activity. There will never be any callback to the activity when a new activity comes over it or user presses back press.
onUserLeaveHint()