---
title: GKChallengeListener
framework: gamekit
role: symbol
role_heading: Protocol
path: gamekit/gkchallengelistener
---

# GKChallengeListener

An object that responds to challenge events.

## Declaration

```swift
protocol GKChallengeListener : NSObjectProtocol
```

## Overview

Overview Your game can ignore a challenge, start up in a specific state so the local player can respond to a challenge, or notify the challenger when the local player completes a challenge. Don’t implement GKChallengeListener directly; instead use GKLocalPlayerListener. The GKLocalPlayerListener protocol inherits methods from GKChallengeListener, GKInviteEventListener, GKSavedGameListener, and GKTurnBasedEventListener in order to handle multiple events.

## Topics

### Responding to a Challenge

- [player(_:didReceive:)](gamekit/gkchallengelistener/player(_:didreceive:).md)
- [player(_:wantsToPlay:)](gamekit/gkchallengelistener/player(_:wantstoplay:).md)

### Completing a Challenge

- [player(_:didComplete:issuedByFriend:)](gamekit/gkchallengelistener/player(_:didcomplete:issuedbyfriend:).md)
- [player(_:issuedChallengeWasCompleted:byFriend:)](gamekit/gkchallengelistener/player(_:issuedchallengewascompleted:byfriend:).md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

### Inherited By

- [GKLocalPlayerListener](gamekit/gklocalplayerlistener.md)

## See Also

### Deprecated protocols

- [GKAchievementViewControllerDelegate](gamekit/gkachievementviewcontrollerdelegate.md)
- [GKChallengeEventHandlerDelegate](gamekit/gkchallengeeventhandlerdelegate.md)
- [GKChallengesViewControllerDelegate](gamekit/gkchallengesviewcontrollerdelegate.md)
- [GKFriendRequestComposeViewControllerDelegate](gamekit/gkfriendrequestcomposeviewcontrollerdelegate.md)
- [GKGameSessionEventListener](gamekit/gkgamesessioneventlistener.md)
- [GKLeaderboardViewControllerDelegate](gamekit/gkleaderboardviewcontrollerdelegate.md)
- [GKPeerPickerControllerDelegate](gamekit/gkpeerpickercontrollerdelegate.md)
- [GKSessionDelegate](gamekit/gksessiondelegate.md)
- [GKTurnBasedEventHandlerDelegate](gamekit/gkturnbasedeventhandlerdelegate.md)
- [GKVoiceChatClient](gamekit/gkvoicechatclient.md)
