I had the same problem, although for me it was when the user turned his device (the action will be destroyed, and with it the connection to the Google Play services). I think my decision should work for you too. I answered my question here :
In short, here is a verbal explanation (see link to code samples):
A change in device orientation will destroy MainActivity extends BaseGameActivity , and with it your game state (i.e. your connection to Google Play services). However, we can put all of our GameHelper code in a "headless" fragment (a fragment without a user interface), with declared setRetainInstance(true) . Now that our MainActivity extends FragmentActivity destroyed when the orientation changes, the headless fragment stops and even disconnects, but is not destroyed ! ( onDestroy() not called) When MainActivity recreated by Android, our headless fragment is automatically attached to it. At this time, onCreate() NOT called in our headless snippet. So, onCreate() is the place we connect to GameHelper. We can disconnect from GameHelper in onDestroy() , because it will never be called, except when the Application ends (which at that time it was normal to kill our connection).
source share