View in English

  • Apple Developer
    • Get Started

    Explore Get Started

    • Overview
    • Learn
    • Apple Developer Program

    Stay Updated

    • Latest News
    • Hello Developer
    • Platforms

    Explore Platforms

    • Apple Platforms
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store

    Featured

    • Design
    • Distribution
    • Games
    • Accessories
    • Web
    • Home
    • CarPlay
    • Technologies

    Explore Technologies

    • Overview
    • Xcode
    • Swift
    • SwiftUI

    Featured

    • Accessibility
    • App Intents
    • Apple Intelligence
    • Games
    • Machine Learning & AI
    • Security
    • Xcode Cloud
    • Community

    Explore Community

    • Overview
    • Meet with Apple events
    • Community-driven events
    • Developer Forums
    • Open Source

    Featured

    • WWDC
    • Swift Student Challenge
    • Developer Stories
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Centers
    • Documentation

    Explore Documentation

    • Documentation Library
    • Technology Overviews
    • Sample Code
    • Human Interface Guidelines
    • Videos

    Release Notes

    • Featured Updates
    • iOS
    • iPadOS
    • macOS
    • watchOS
    • visionOS
    • tvOS
    • Xcode
    • Downloads

    Explore Downloads

    • All Downloads
    • Operating Systems
    • Applications
    • Design Resources

    Featured

    • Xcode
    • TestFlight
    • Fonts
    • SF Symbols
    • Icon Composer
    • Support

    Explore Support

    • Overview
    • Help Guides
    • Developer Forums
    • Feedback Assistant
    • Contact Us

    Featured

    • Account Help
    • App Review Guidelines
    • App Store Connect Help
    • Upcoming Requirements
    • Agreements and Guidelines
    • System Status
  • Quick Links

    • Events
    • News
    • Forums
    • Sample Code
    • Videos
 

Vídeos

Abrir menu Fechar menu
  • Coleções
  • Todos os vídeos
  • Sobre

Mais vídeos

  • Sobre
  • Código
  • Tap into Game Center: Dashboard, Access Point, and Profile

    Apple's social gaming network is ready to play. We'll walk you through the latest updates to Game Center, starting with its in-game interface and all-new player experience. Learn how to integrate GameKit into your app and authenticate players effectively, and discover the Access Point, which brings players into the in-game dashboard. From there, we'll explore player profiles and their options for privacy.

    After exploring Game Center's interface, Dashboard, and player profiles, continue to the next video to learn about Leaderboards, Achievements, and Multiplayer gaming.

    And for more about preparing your game's interface for these new capabilities, see “Design for Game Center.”

    Recursos

    • Human Interface Guidelines: Game Center
      • Vídeo HD
      • Vídeo SD

    Vídeos relacionados

    WWDC22

    • Plug-in and play: Add Apple frameworks to your Unity game projects
    • Reach new players with Game Center dashboard

    WWDC20

    • Design for Game Center
    • Tap into Game Center: Leaderboards, Achievements, and Multiplayer
  • Buscar neste vídeo...
    • 10:05 - Presenting the main dashboard

      // GKGameCenterViewController
      
      public init(state:)
      [...]
      
      // Example: Display Main Dashboard
      let vc = GKGameCenterViewController(state: .dashboard)
      vc.gameCenterDelegate = self
      present(vc, animated: true, completion: nil) 
      
      [...]
      enum GKGameCenterViewControllerState : Int {
         case `default`
         case leaderboards
         case achievements
         case challenges
         case localPlayerProfile
         case dashboard
      }
    • 10:51 - Display a specific leaderboard

      // Display scores for a specific leaderboard
      let vc = GKGameCenterViewController(
                      leaderboardID: "grp.xyz.laketahoe",
                      playerScope: .global,
                      timeScope: .allTime)
      vc.gameCenterDelegate = self
      present(vc, animated: true, completion: nil)
    • 13:18 - Configure and show Access Point

      // Configure and show Access Point
      func showMainMenu() {
          // Call your code to setup the main menu
          self.setupMainMenu()
      
          // Place access point on top left   
          GKAccessPoint.shared.location = .topLeading    
      
          // Show highlights
          GKAccessPoint.shared.showHighlights = true
       
          // Show it!
          GKAccessPoint.shared.isActive = true
      }
    • 14:00 - Observing isPresentingGameCenter

      let observation = GKAccessPoint.shared.observe(
                 \.isPresentingGameCenter
          ) { [weak self] _,_ in
          self.paused = GKAccessPoint.shared.isPresentingGameCenter
      }
    • 14:44 - Changing the frame

      // Observable properties
      // frameInScreenCoordinates
      
      let observation = GKAccessPoint.shared.observe(
                 \.frameInScreenCoordinates
          ) { [weak self] _,_ in
          let screenFrame = GKAccessPoint.shared.frameInScreenCoordinates
          let accessPointFrame = myView.convert(screenFrame, from: nil)
          // adjust your layout
      }
    • 15:18 - Handling focus

      // Apple TV and controllers
      
      // track and update focus
      func trackController(position: CGPoint) {
        let screenFrame = GKAccessPoint.shared.frameInScreenCoordinates
        let accessFrame = myView.convert(screenFrame, from: nil)
        // if the point is in the access point turn on feedback
        accessPointElement.focusFeedback = CGRectContainsPoint(accessFrame, position)
      }
    • 15:38 - Handling selection

      // Apple TV and controllers
      
      // Handle selection
      func accessPointSelected() {
        GKAccessPoint.shared.triggerAccessPoint {}
      }
    • 20:01 - Showing the player profile

      // Local player profile
      
      let profileVC = GKGameCenterViewController(state: .localPlayerProfile)
      profileVC.gameCenterDelegate = self
      
      present(profileVC, animated: true, completion: nil)
    • 20:28 - Player restrictions

      // Local player restrictions
      
      GKLocalPlayer.local.authenticateHandler = { viewController, error in
          let isGameCenterReady = (viewController == nil) && (error == nil)
      
          if isGameCenterReady {
              if GKLocalPlayer.local.isUnderage {
                  // Hide explicit game content
              }
      
              if GKLocalPlayer.local.isMultiplayerGamingRestricted {
                  // Disable multiplayer game features
              } 
      
              if GKLocalPlayer.local.isPersonalizedCommunicationRestricted {
                  // Disable in game communication UI
              }    
          }
      }

Developer Footer

  • Vídeos
  • WWDC20
  • Tap into Game Center: Dashboard, Access Point, and Profile
  • Open Menu Close Menu
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • Icon Composer
    • SF Symbols
    Open Menu Close Menu
    • Accessibility
    • Accessories
    • Apple Intelligence
    • Audio & Video
    • Augmented Reality
    • Business
    • Design
    • Distribution
    • Education
    • Games
    • Health & Fitness
    • In-App Purchase
    • Localization
    • Maps & Location
    • Machine Learning & AI
    • Security
    • Safari & Web
    Open Menu Close Menu
    • Documentation
    • Downloads
    • Sample Code
    • Videos
    Open Menu Close Menu
    • Help Guides & Articles
    • Contact Us
    • Forums
    • Feedback & Bug Reporting
    • System Status
    Open Menu Close Menu
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles
    • Feedback Assistant
    Open Menu Close Menu
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program
    • Mini Apps Partner Program
    • News Partner Program
    • Video Partner Program
    • Security Bounty Program
    • Security Research Device Program
    Open Menu Close Menu
    • Meet with Apple
    • Apple Developer Centers
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Academies
    • WWDC
    Read the latest news.
    Get the Apple Developer app.
    Copyright © 2026 Apple Inc. All rights reserved.
    Terms of Use Privacy Policy Agreements and Guidelines