How to implement the Android Application Lifecycle in Monogame?

At this point, Game.Exit() on Android calls Activity.MoveTaskToBack(true) which moves the activity to the back of the stack. This pauses the activity but does not destroy the activity, therefore the Game instance is not disposed. The Game object will trigger the OnActivated and OnDeactivated events in these cases.

Another thing I have found recently is that the version of openal-soft we are using on Android may not be pausing and resuming its audio mixer thread when the activity is paused and resumed. This will lead to excessive battery usage when the app is in the background. It was only quite recently that pausing the audio mixer thread was added to the library. That is on my list of things to check into.