Thanks for being a part of WWDC25!

How did we do? We’d love to know your thoughts on this year’s conference. Take the survey here

GameKit not working as expected in iOS 26.

I just upgraded my macOS, Xcode and Simulator all to the newest beta version 26. Then I found two issues when building my app with Xcode 26 and running it on simulator 26.

  1. The game center access point no longer shows up in the app. This is how it's configured in the past. And it still works on simulator 18.4
    func authenticatePlayer() {
        GKAccessPoint.shared.location = .topTrailing
        self.localPlayer.authenticateHandler = { viewController, error in
            if let viewController = viewController {
                // can present Game Center login screen
            } else if self.localPlayer.isAuthenticated {
                // game can be started
            } else {
                // user didn't log in, continue the game without game center
            }
        }
    }
  1. After game ended, the leaderboard won't load. This is how it's implemented in the past. It's still working in simulator 18.4
struct GameCenterView: UIViewControllerRepresentable {
    @Environment(\.presentationMode) var presentationMode
    ...
    
    func makeUIViewController(context: Context) -> GKGameCenterViewController {
        let viewController = GKGameCenterViewController(
            leaderboardID: getLeaderBoardID(with: leaderBoardGameMode),
            playerScope: .global,
            timeScope: .allTime
        )
        viewController.gameCenterDelegate = context.coordinator
        return viewController
    }

    func updateUIViewController(_ uiViewController: GKGameCenterViewController, context: Context) {}

    func makeCoordinator() -> Coordinator {
        Coordinator(self)
    }
    
    class Coordinator: NSObject, GKGameCenterControllerDelegate {
        let parent: GameCenterView

        init(_ parent: GameCenterView) {
            self.parent = parent
        }

        func gameCenterViewControllerDidFinish(_ gameCenterViewController: GKGameCenterViewController) {
            parent.presentationMode.wrappedValue.dismiss()
        }
    }
}

Hello,

Is this an issue with our Unity plugins for GameKit?

If so please see the 2025-beta1 branch for updates to the Apple.GameKit and Apple.PHASE plug-ins to support new features and APIs announced at WWDC '25 on June 9, 2025.

Even if you don't intend to use the new features, the beta1 branch may be required for compatibility so please try it to establish known working configuration.

If this doesn't resolve the issue let us know and we'll continue to investigate.

GameKit not working as expected in iOS 26.
 
 
Q