我的IDE显示警告"Obsolete: Deprecated in iOS 7.0"
此方法:
这种方法适用于iOS 7,但使用不是问题?
在iOS 7上还存在其他方法吗?
谢谢!
答案 0 :(得分:0)
我使用这种方法在游戏中心报告得分并且有效。
-(void)reportScore
{
if(isIOS7)
{
// Create a GKScore object to assign the score and report it as a NSArray object.
GKScore *score = [[GKScore alloc] initWithLeaderboardIdentifier:_leaderboardIdentifier];
score.value = _score;
[GKScore reportScores:@[score] withCompletionHandler:^(NSError *error) {
if (error != nil) {
NSLog(@"score reporting error : %@", [error localizedDescription]);
}
else
{
NSLog(@"score reported.");
}
}];
}
else
{
GKScore *scoreReporter = [[GKScore alloc] initWithCategory:_leaderboardIdentifier];
scoreReporter.value = _score;
scoreReporter.context = 0;
[scoreReporter reportScoreWithCompletionHandler:^(NSError *error) {
// Do something interesting here.
if (error != nil) {
NSLog(@"score reporting error : %@", [error localizedDescription]);
}
else
{
NSLog(@"score reported.");
}
}];
}
}
答案 1 :(得分:0)
Objective-C方法以小写方法开始。它们不是用圆括号调用的。所以,我:
GKScore
; -reportScoreWithCompletionHandler:
; +reportScores: withCompletionHandler:
未被弃用。对于GKAchievement
中的集合类方法,不推荐使用单一实例方法,看到了同样的事情。
所以:只使用收集方法。不推荐使用的方法暂时不受支持,然后消失。通过阅读文档,您可以非常快速地找到目前支持的内容。