3

我在 iOS + Xamarin iOS 中遇到了一个非常奇怪的 GameCenter 问题。

当用户取消使用 GameCenter 的身份验证过程时,如果我再次设置 AuthenticateHandler 它什么也不做,则永远不会触发处理程序,除非我将应用程序发送到后台然后恢复它。

¿这是正常行为还是有什么办法可以做到这一点?

如果您错误地按下取消选项,您将无法进行身份验证,这非常烦人。

这是我的验证码:

    if (!GKLocalPlayer.LocalPlayer.Authenticated) 
    {
            GKLocalPlayer.LocalPlayer.AuthenticateHandler = 
            (UIViewController cont, NSError Err) => {

                if (cont != null)
                    OpenGLViewController.CurrentController.
                    PresentViewController (cont, true, null);
                else if (GKLocalPlayer.LocalPlayer.Authenticated) {
                    //Authenticated user
                } else {
                    //Error
                }
            };

    } else {
                   //Authenticated user
    }
4

0 回答 0