gpt4 book ai didi

objective-c - Game Center 不响应 authenticateWithCompletionHandler 请求 (iOS)

转载 作者:可可西里 更新时间:2023-11-01 03:21:34 24 4
gpt4 key购买 nike

这是我的情况:

1) 用户第一次打开我的应用程序。我立即调用 authenticateLocalUser 尝试将他们登录到 Game Center。带有登录、创建帐户和取消按钮的弹出窗口成功出现。

2) 用户现在不想登录,因此他们单击“取消”。 (这不是他们第 3 次单击“取消”,我也没有收到“游戏中心已禁用,请从游戏中心应用程序登录以启用”消息。)用户可以继续正常使用我的应用程序。

3) 用户想稍后使用 Game Center,所以他们单击我给他们的按钮登录到 Game Center。我再次调用 authenticateLocalUser。这次,弹出窗口没有出现。事实上什么都没有发生,除了我收到这些控制台日志消息:

2012-04-26 08:38:42.861 Clink[332:707] authenticateWithCompletionHandler: enter
2012-04-26 08:38:42.863 Clink[332:707] authenticateWithCompletionHandler: exit

4) 我已经测试了立即按下再次调用 authenticateLocalUser 的按钮,以及在这样做之前等待很长一段时间。在我再次调用 authenticateLocalUser 的任何时候,再一次没有出现,我从函数中得到这个错误:

Error Domain=GKErrorDomain Code=7 "The requested operation could not be completed because local player is already authenticating."

所以似乎正在发生的事情是,当我在第 3 步中调用 authenticateLocalUser 时,我要求 Game Center 进行身份验证,但它挂断了并且没有响应我的请求。然后在第 4 步中,当我再次尝试时,它告诉我它无法处理我的请求,因为它已经在尝试进行身份验证。但是,我在第 3 步中的请求已等待长达 10 分钟的响应,但我从未从 Game Center 收到响应。

这是我的 authenticateLocalUser 函数的内容。据我所知,我没有更改我从 Apple 示例代码下载的版本。

- (void) authenticateLocalUser
{
if([GKLocalPlayer localPlayer].authenticated == NO)
{
[[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error)
{
[self callDelegateOnMainThread: @selector(processGameCenterAuth:) withArg: NULL error: error];
}];
}
}

有没有其他人以前遇到过这个问题或者对可能发生的事情有任何想法?我已经研究了一段时间,但不太确定发生了什么。

提前致谢!

最佳答案

当我对另一个 Game Center 帐户进行身份验证时,我遇到了同样的问题。当您使用普通帐户登录某个游戏并同时使用测试帐户登录时,就会发生这种情况。

只需重置您的设备设置,不要在测试时使用您的真实帐户登录其他游戏。当您同时执行这两项操作时,就会发生这种情况。重置您的设备设置,清理项目,应该没问题。并且仅使用测试 iTunes 帐户来测试您的游戏。

关于objective-c - Game Center 不响应 authenticateWithCompletionHandler 请求 (iOS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10335134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com