我正在构建一款支持Game Center(GC)的iPhone游戏。当应用程序启动时,我尝试验证本地播放器...
if([GKLocalPlayer localPlayer].authenticated == NO)
{
[[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error)
{
[self callDelegateOnMainThread: @selector(processGameCenterAuth:) withArg: NULL error: error];
}];
}
一切似乎都运转良好。如果用户在应用程序启动时未登录GC,应用程序将显示一个对话框,为其提供三个选项...
这是所需的行为,但在我测试时,我点击了“取消”选项,现在每次都出现身份验证过程错误,出现以下错误“请求的操作已被取消”。即使我删除了应用程序并重新安装它,它仍然会出错,并且该对话框现在不会弹出。
有谁知道为什么会这样或者我如何解决它?
提前感谢您的智慧!
答案 0 :(得分:32)
事实证明这是苹果无证件行为。
用户连续3次取消后,他必须转到Game Center应用程序并从那里连接。
Go Figure。