We see issues when the game helper cannot connect during sign in (such as when your device is in airplane mode). It keeps retrying causing the application to lock. Here is the log that asks us to report the bug:
D/GoogleGameHelper( 9622): GameHelper: onConnectionFailed
D/GoogleGameHelper( 9622): GameHelper: Connection failure:
D/GoogleGameHelper( 9622): GameHelper: - code: SIGN_IN_REQUIRED(4)
D/GoogleGameHelper( 9622): GameHelper: - resolvable: true
D/GoogleGameHelper( 9622): GameHelper: - details: ConnectionResult{statusCode=SIGN_IN_REQUIRED, resolution=PendingIntent{42a24660: android.os.BinderProxy@42a18298}}
D/GoogleGameHelper( 9622): GameHelper: onConnectionFailed: since user initiated sign-in, resolving problem.
W/GoogleGameHelper( 9622): !!! GameHelper WARNING: GameHelper: bug detected. Please report it at our bug tracker https://github.com/playgameservices/android-samples/issues. Please include the last couple hundred lines of logcat output and describe the operation that caused this. Explanation: resolveConnectionResult should only be called when connecting. Proceeding anyway.Operation: resolveConnectionResult. State: DISCONNECTED. Expected state: CONNECTING.
D/GoogleGameHelper( 9622): GameHelper: resolveConnectionResult: trying to resolve result: ConnectionResult{statusCode=SIGN_IN_REQUIRED, resolution=PendingIntent{42a24660: android.os.BinderProxy@42a18298}}
D/GoogleGameHelper( 9622): GameHelper: Result has resolution. Starting it.
Here are the log messages above which may or may not help:
D/CoreActivity( 9622): Java::onActivityResult - 9001
D/GoogleGameHelper( 9622): GameHelper: onActivityResult: req=RC_RESOLVE, resp=SIGN_IN_FAILED
D/GoogleGameHelper( 9622): GameHelper: onActivityResult: ignoring because state isn't STATE_CONNECTING (it's DISCONNECTED)
D/CoreActivity( 9622): Java::onResume
D/FacebookHelper( 9622): Facebook: openSession with state: CLOSED_LOGIN_FAILED
D/GoogleGameHelper( 9622): GameHelper: onStart, state = DISCONNECTED
D/GoogleGameHelper( 9622): GameHelper: onStart: Not connecting (user specifically signed out).
D/KeyguardViewMediator( 501): setHidden false
I/SurfaceFlinger( 155): id=171 Removed idx=4 MapSz=4
D/KeyguardViewMediator( 501): setHidden false
I/SurfaceFlinger( 155): id=171 Removed idx=-2 MapSz=4
D/overlay ( 155): FROM_STATE = OV_BYPASS_3_LAYER TO_STATE = OV_CLOSED
D/overlay ( 155): FROM_STATE = OV_CLOSED TO_STATE = OV_BYPASS_2_LAYER
E/overlay ( 155): Failed to call ioctl MSMFB_OVERLAY_SET err=Operation not permitted
E/overlay ( 155): MdpCtrl failed to setOverlay, restoring last known good ov info
E/overlay ( 155): == Bad OVInfo is: mdp_overlay z=0 fg=1 alpha=255 mask=-1 flags=0x840000 id=-1
E/overlay ( 155): src msmfb_img w=480 h=800 format=0 MDP_RGB_565
E/overlay ( 155): src_rect mdp_rect x=0 y=0 w=480 h=800
E/overlay ( 155): dst_rect mdp_rect x=0 y=0 w=480 h=800
E/overlay ( 155): user_data user_data cnt=8
E/overlay ( 155): i=0 val=0
E/overlay ( 155): i=1 val=0
E/overlay ( 155): i=2 val=0
E/overlay ( 155): i=3 val=0
E/overlay ( 155): i=4 val=0
E/overlay ( 155): i=5 val=0
E/overlay ( 155): i=6 val=0
E/overlay ( 155): i=7 val=0
E/overlay ( 155): == Last good known OVInfo is: mdp_overlay z=0 fg=0 alpha=0 mask=0 flags=0x0 id=-1
E/overlay ( 155): src msmfb_img w=0 h=0 format=0 MDP_RGB_565
E/overlay ( 155): src_rect mdp_rect x=0 y=0 w=0 h=0
E/overlay ( 155): dst_rect mdp_rect x=0 y=0 w=0 h=0
E/overlay ( 155): user_data user_data cnt=8
E/overlay ( 155): i=0 val=0
E/overlay ( 155): i=1 val=0
E/overlay ( 155): i=2 val=0
E/overlay ( 155): i=3 val=0
E/overlay ( 155): i=4 val=0
E/overlay ( 155): i=5 val=0
E/overlay ( 155): i=6 val=0
E/overlay ( 155): i=7 val=0
E/overlay ( 155): MdpCtrl Lkgo ov has id -1, will not restore
E/overlay ( 155): Ctrl commit failed set overlay
E/overlay ( 155): OverlayImpl p0 failed to commit
E/overlay ( 155): Overlay commit failed
E/hwcomposer( 155): prepare: commit failed
D/overlay ( 155): FROM_STATE = OV_BYPASS_2_LAYER TO_STATE = OV_CLOSED
D/overlay ( 155): FROM_STATE = OV_CLOSED TO_STATE = OV_BYPASS_2_LAYER
D/void AppDelegate::applicationWillEnterForeground( 9622): Activiating and Starting Animation
V/MediaPlayer( 9622): start
V/MediaPlayerService( 158): [3] setLooping(0)
V/StagefrightPlayer( 158): setLooping
V/MediaPlayerService( 158): [3] setVolume(0.200000, 0.200000)
V/AudioSink( 158): setVolume(0.200000, 0.200000): 0x41c7ec48
V/MediaPlayerService( 158): [3] setAuxEffectSendLevel(0.000000)
V/AudioSink( 158): setAuxEffectSendLevel(0.000000)
V/MediaPlayerService( 158): [3] start
V/StagefrightPlayer( 158): setLooping
V/StagefrightPlayer( 158): start
V/AwesomePlayer( 158): play
V/AwesomePlayer( 158): AwesomePlayer::play_l():: This is not a DRM content
V/AwesomePlayer( 158): startAudioPlayer_l, sendErrorNotification (0)
V/AudioSink( 158): resumeSession
W/AudioPolicyManagerBase( 158): changeRefCount() invalid delta -1 for stream 3, refCount 0
V/AudioPolicyManagerBase( 158): startOutput() output 56, stream 3, session 0
V/AudioPolicyManagerBase( 158): changeRefCount() stream 3, count 1
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
V/AudioPolicyManagerBase( 158): getNewDevice() selected device 2
E/AudioPolicyManagerBase( 158): startOutput() LPA mute
V/AudioHardwareMSM8660( 158): AudioSessionOutLPA::setParameters() lpa_mute=on
V/AudioHardwareMSM8660( 158): AudioSessionOutLPA::setVolume(0.000000)
V/AudioHardwareMSM8660( 158): Setting session volume to 0.000000 (available range is 0 to 100)
V/AudioHardwareMSM8660( 158): msm_set_volume(0.000000) succeeded
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
V/AudioPolicyManagerBase( 158): getNewDevice() selected device 2
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
V/AudioPolicyManagerBase( 158): getNewDevice() selected device 2
V/AudioPolicyManagerBase( 158): setOutputDevice() output 56 device 0002 force 1 delayMs 0
V/AudioPolicyManagerBase( 158): setOutputDevice() prevDevice 0002
V/AudioPolicyManagerBase( 158): setOutputDevice() changing device(0x2)
V/AudioHardwareMSM8660( 158): AudioSessionOutLPA::setParameters() routing=2
V/AudioHardwareMSM8660( 158): set output routing 2
E/AudioHardwareMSM8660( 158): outputDev=2, inputDev=0
V/AudioHardwareMSM8660( 158): cur_rx:2 => rx:2, cur_tx:3 => tx:3 is seleted in doRouting
V/AudioHardwareMSM8660( 158): doRouting done
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
V/AudioPolicyManagerBase( 158): getNewDevice() selected device 2
V/AudioPolicyManagerBase( 158): checkAndSetVolume() cannot set stream 6 volume with force use = 0 for comm
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
E/AudioPolicyManagerBase( 158): stream type [10], return media stratege
V/AudioPolicyManagerBase( 158): getNewDevice() selected device 2
V/AudioPolicyManagerBase( 158): checkOutputForStrategy(0002,0002,3)
V/AwesomePlayer( 158): addBatteryData
D/activateApp( 9622): activateApp()