如何正确测试游戏中心的成就

时间:2014-12-30 14:06:33

标签: ios swift game-center gamekit achievements

我已经在我的游戏中实现了GameKit的成就和排行榜。 我已经对它们进行了测试,但它们似乎都有效。 但是为了从一开始就正确地测试它们(我通过试验和错误做了一些测试)有没有办法再次开始完全擦除它们? 我尝试从模拟/手机的GameCenter应用程序中删除应用程序但是当我再次登录并且iOS在GameCenter中注册应用程序时,一切都重新出现。 此外,我实现了一项可以取得更多成就的成就。这项成就得到50分。实际上我可以比游戏中的实现更多,实际上我每次都会弹出。但是在成就列表中我只能看到50分而不是更多,可能吗? 也许,我没有获得比实现更多的意义。

编辑: 我试图用以下方法解决这个问题

func resetAchievements() {
    // Clear all progress saved on Game Center
    GKAchievement.resetAchievementsWithCompletionHandler() {(error) in
        self.lastError = error
    }

}

但是只有当我在设备中而不是在模拟器中安装应用程序时它才有效,为什么? 也许是因为我不了解Apple的指南

class func resetAchievementsWithCompletionHandler(_ completionHandler: ((NSError!) -> Void)!)

1 个答案:

答案 0 :(得分:1)

以下内容将重置您当地玩家获得的所有成就。您不能多次获得成就,您正在做的是一遍又一遍地发布最终值,这将显示完成提醒。通过多次获得的选项,您可以接受朋友对该成就的挑战。我建议再次阅读介绍指南,因为这两个主题都会详细讨论。

  [GKAchievement resetAchievementsWithCompletionHandler: ^(NSError *error) 
         {
             if(error == NULL)
             {
                 NSLog(@"Achievements have been reset");

             }
             else 
             {
                 NSLog(@"There was an error in resetting the achievements: %@", [error localizedDescription]);
             }
         }];