Search code examples
iosiphonegame-centergamekit

Handle Selected Turns/Games in iOS Game Center App in Game Center Enabled App


I am creating a GKTurnBasedMatch Game Center-enabled app. I've successfully implemented GKLocalPlayerListener methods to listen for events, such as player:receivedTurnEventForMatch:didBecomeActive: and other methods. Additionally, if a user taps on an existing match in the GKTurnBasedMatchmakerViewController (for example, if showExistingMatches is set to YES), I can handle the event in the GKTurnBasedMatchmakerViewControllerDelegate method turnBasedMatchmakerViewController:didFindMatch:.

However, I want to handle tapping on the various controls to view a match within the iOS system Game Center app.

For example, if I navigate to the Game Center iOS pre-installed app (not my app), tap on the Turns tab, tap on the row for my app, tap on a match/turn, and then tap on "View Game" or "Accept Invite" or "Play your turn", I want to handle these match-specific actions in my app.

When these items are tapped, my app indeed launches, but as far as I can tell from reading the documentation, there is no way to get extra information about which match the user tapped, so I can appropriately show that match.


Solution

  • Apple has chosen to remove this feature.

    Their documentation is inaccurate. I opened a bug with Apple to investigate further. Here is the disheartening proof.

    Apple bug report