Как правильно тестировать достижения игрового центра

Я реализовал 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)!)

person Nicholas    schedule 30.12.2014    source источник
comment
тестирование и сброс настроек игрового центра описаны в соответствующих руководствах по подключению игрового центра/itunes. Для остальных опубликуйте свой код.   -  person LearnCocos2D    schedule 30.12.2014


Ответы (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]);
             }
         }];
person Kyle Richter    schedule 30.12.2014
comment
Так что вариант «достижимый» больше, чем один, - это не то, что я думал. Где я могу найти полное и понятное руководство по GameCenter? - person Nicholas; 31.12.2014
comment
не могли бы вы опубликовать решение в «swift», так как я прошу этот язык, а не ObjC? Спасибо - person Nicholas; 03.01.2015