如何判断玩家何时取消Google Play游戏登录?

时间:2016-05-11 10:33:33

标签: c# android unity3d google-play google-play-games

我正在使用Unity。

我试图检测播放器取消自动Google Play游戏登录的时间,因此我可以在以后玩游戏时禁用自动登录尝试。

我需要这样做才能符合质量检查表,如下所述:https://developers.google.com/games/services/checklist#1_sign-in

但是,我无法找到确定Social.localUser.Authenticate结果的方法。我只能获得成功的真假。

我需要查看生成的GP_ConnectionResultCode。

这是我的验证过程代码,在游戏开始时调用。问题是" resultCode"永远不会被设置,所以它总是返回默认值" SUCCESS"即使代码贯穿故障逻辑。

   public static GP_ConnectionResultCode resultCode;

   public void SignIn() {
    #if UNITY_ANDROID
    Social.localUser.Authenticate ((bool success) => {
        if (success) {
            Debug.Log("Google Play Games sign-in success.");
            uScriptCustomEvent.BroadcastCustomEvent("SocialSignedIn", true, gameObject);
            PlayerPrefs.SetInt("SocialAutoSignIn", 1);
        }
        else {
            Debug.Log ("Result code: " + resultCode);
            if (resultCode == GP_ConnectionResultCode.CANCELED) {
                Debug.Log("Google Play Games sign-in cancelled.");
                uScriptCustomEvent.BroadcastCustomEvent("SocialSignedIn", false, gameObject);
                PlayerPrefs.SetInt("SocialAutoSignIn", 0);
            }
            else {
                Debug.Log("Google Play Games sign-in failed.");
                uScriptCustomEvent.BroadcastCustomEvent("SocialSignedIn", false, gameObject);
                PlayerPrefs.SetInt("SocialAutoSignIn", 1);
            }
        }
    });
    #endif
   }

有什么想法吗?我已经蠢蠢欲动了,但找不到其他人有同样的问题。

我找到了这个:http://answers.unity3d.com/question...ay-games-popup-if-user-denies.html?sort=votes 但看起来它会假设登录被取消,即使它因任何其他原因失败了。

0 个答案:

没有答案