允许经过身份验证的IOS游戏中心用户自动运行
我正在制作一款iPhone应用程序(一款游戏),虽然它不会成为我的第一款游戏,但它将成为我的第一款使用网络连接的游戏(我打算添加一些乘法器功能)。 我希望玩家能够打开我的应用程序,登录游戏中心,然后使用它连接到我的服务器。 这可能吗? 换一种说法:
Player signs in to game center
Sends username to my server
if (game center username doesnt exist)
{
Add their username to my sql database
}
else if (username does exist)
{
Send sign in successful message to device.
}
我相信我前一段时间询问如何做到这一点,但答案中提到了使用设备UDID的一些问题,我不想这么做(因为显而易见的原因,如果您阅读技术相关新闻)。
那么无论如何,有没有一种值得信赖的方式,我可以确定用户是否认为他们是通过游戏中心进行身份验证的,我可以用它来对我的服务器进行身份验证? 谢谢
我认为,而不是UDID,你可以使用GKPlayer.playerID,这是每个gamecenter帐户独有的。 为了您的其他目的,您可以自定义验证处理程序的完成块
GKLocalPlayer * __weak localPlayer = [GKLocalPlayer localPlayer];
localPlayer.authenticateHandler = ^(UIViewController *viewController, NSError *error)
{
if (viewController != nil)
{
[currentViewController presentViewController:viewController animated:YES completion:nil];
}
else if (localPlayer.isAuthenticated)
{
NSLog(@"Player authenticated");
/* Your custom methods here
Sends username to my server -- send localPlayer.playerID to your server
if (game center username doesnt exist)
{
Add their username to my sql database
}
else if (username does exist)
{
Send sign in successful message to device.
}
*/
}
else
{
NSLog(@"Player not authenticated");
//disableGameCenter
}
NSLog(@"Error: %@",error);
};
链接地址: http://www.djcxy.com/p/68229.html