Skip to content
Objective-C Helper class to ease interaction with Apple's GameKit API
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Objective-C Helper class to ease interaction with Apple's GameKit API

Should work with all types of Apps, also Cocos2d 2+


  • Show Leaderboards (specify which) / Achievements
  • Report Scores to Leaderboards / Report Achievements
  • Achievement / Score Caching System
  • All saved data is encrypted (AppStore Safe) … no cheating here ;)


ABGameKitHelper uses ARC, to use it in a non ARC project be sure to add "-fobjc-arc" flag in "Compile Sources" configuration:

Targets->Build Phases->Compile Sources->ABGameKitHelper.m


Getting ABGameKitHelper up and running is fairly easy, here a step by step guide to get you started:

  1. Link "GameKit.framework", "CFNetwork.framework", "Security.framework" and "SystemConfiguration.framework" with your Project

  2. In ABGameKitHelper.h edit SECRET_KEY to your liking

  3. Call following code once the UI of your application is loaded

    [ABGameKitHelper sharedHelper];

  4. Thats the basic setup, easy huh? Now on to actually interacting with GameCenter:

Show Leaderboard

[[ABGameKitHelper sharedHelper] showLeaderboard:@"leaderboardId"];

Show Achievements

[[ABGameKitHelper sharedHelper] showAchievements];

Report Achievement

[[ABGameKitHelper sharedHelper] reportAchievement:@"achievementId" percentComplete:100.0f];

Show Notification (Shown only once per completed Achievement)

[[ABGameKitHelper sharedHelper] showNotification:@"Notification Title" message:@"Some Message" identifier:@"achievementID"];

Report Leaderboard Score

[[ABGameKitHelper sharedHelper] reportScore:2000 forLeaderboard:@"leaderboardId"];

! If no Internet connection is present during reporting Achievemnts/Leaderboard Scores are automatically cached and reported the next time the Player authenticates


  • Mac / Moutain Lion Compatibility


MIT License, check "LICENSE"

You can’t perform that action at this time.