【问题标题】:score submittion failure成绩提交失败
【发布时间】:2011-03-11 07:51:12
【问题描述】:

我在我的 cocos2d 中总是收到一个失败,但是当我在基于视图的应用程序中运行这个项目时,它会给我成功,并且分数会很容易提交

[[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error){
    if (error ==nil) {
        NSLog(@"Success");
    } else {
        NSLog(@"Fail");
    }   
}];


GKScore *myScoreValue = [[[GKScore alloc] initWithCategory:@"123"] autorelease];
myScoreValue.value =  lastScore;

[myScoreValue reportScoreWithCompletionHandler:^(NSError *error){
    if(error != nil){
        NSLog(@"Score Submission Failed");
    } else {
        NSLog(@"Score Submitted");
    }

}];

【问题讨论】:

    标签: iphone objective-c gamekit


    【解决方案1】:

    我也有这个错误。我认为当您登录常规游戏中心帐户并尝试使用需要沙盒的应用程序进行身份验证时会发生这种情况。但我不确定,这只是一个猜测。

    对我有用的是退出 Game Center 应用程序,然后再次尝试该应用程序,这将登录或创建沙盒用户。

    虽然不是最具描述性的错误消息。

    【讨论】:

    • 我在模拟器中遇到问题,而我的游戏中心代码在设备中运行良好。问题原来是joeld所说的,模拟器已经连接到一个帐户,每次我尝试连接时都会出错。通过使用 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"gamecenter:"]] 轻松登录到您的游戏中心帐户;然后注销并评论 url 代码。它也可能对您的情况有所帮助
    【解决方案2】:

    您是否添加了 GameKit 框架,以及;你把代码放在哪里了?

    [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error){ if (error ==nil) { NSLog(@"Success"); } else { NSLog(@"Fail"); }
    
    }];
    

    您必须在用户启动应用程序或调用 viewDidLoad 函数时进行身份验证。

    我不认为我真的明白你的问题是什么。你得到什么警告?

    【讨论】:

    • Error Domain=GKErrorDomain Code=2 "请求的操作已被取消。" UserInfo=0x232d10 {NSLocalizedDescription=请求的操作已被取消。}
    猜你喜欢
    • 2021-03-07
    • 1970-01-01
    • 2012-06-29
    • 1970-01-01
    • 2019-03-16
    • 2019-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多