概览
用于游戏控制操作的 GCKCastChannel 子类。
如需了解委托协议,请参阅 GCKGameManagerChannelDelegate。
- Deprecated:
- Game Manager API 不再受支持,并将在未来的版本中移除。
继承 GCKCastChannel。
属性摘要 | |
id< GCKGameManagerChannelDelegate > | delegate |
用于从 GCKGameManagerChannel 接收通知的代理。更多... | |
GCKGameManagerState * | currentState |
游戏管理器的当前状态。更多... | |
NSString * | lastUsedPlayerID |
此会话中使用的最后一个可控玩家 ID。更多... | |
BOOL | isInitialConnectionEstablished |
此渠道是否已与接收者的游戏管理器关联,我们已准备好与其互动。更多... | |
NSString * | protocolNamespace |
频道的命名空间。更多... | |
BOOL | isConnected |
一个标记,指示此频道目前是否已连接。更多... | |
GCKDeviceManager * | deviceManager |
已注册此渠道的设备管理器(如果有)。更多... | |
方法详细信息
- (instancetype) initWithSessionID: | (NSString *) | castSessionID |
指定的初始化程序。
自动连接到接收者的游戏管理器。
- Parameters
-
castSessionID The Session ID corresponding to the currently connected Game Manager.
- (instancetype) init |
默认初始化程序不可用。
实现了 GCKCastChannel。
- (NSInteger) sendPlayerAvailableRequest: | (id __nullable) | extraData |
向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateAvailable 状态。
如果此次过渡对相应玩家来说无效,则 GCKGameManagerChannelDelegate 中会触发错误。如果没有最近使用过的播放器,系统会注册新的播放器,并在接收器响应此请求时将其玩家 ID 设置为上次使用的播放器 ID。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- 另请参阅
- lastUsedPlayerID
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerAvailableRequest: | (id __nullable) | extraData | |
playerID: | (NSString *) | playerID | |
向接收器发送请求,使播放器进入 GCKPlayerStateAvailable 状态。
如果此次过渡对相应玩家来说无效,则 GCKGameManagerChannelDelegate 中会触发错误。如果玩家 ID 为 nil
,系统会注册新玩家,并在玩家回复此请求时将其玩家 ID 设为上次使用的玩家 ID。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.playerID The player ID of the player whose state is to be changed.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerReadyRequest: | (id __nullable) | extraData |
向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateReady 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- 另请参阅
- lastUsedPlayerID
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerReadyRequest: | (id __nullable) | extraData | |
playerID: | (NSString *) | playerID | |
向接收器发送请求,使播放器进入 GCKPlayerStateReady 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.playerID The player ID of the player to change the state.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerPlayingRequest: | (id __nullable) | extraData |
向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStatePlaying 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- 另请参阅
- lastUsedPlayerID
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerPlayingRequest: | (id __nullable) | extraData | |
playerID: | (NSString *) | playerID | |
向接收器发送请求,使播放器进入 GCKPlayerStatePlaying 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.playerID The player ID of the player to change the state.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerIdleRequest: | (id __nullable) | extraData |
向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateIdle 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接接收者的游戏管理器,则向 GCKGameManagerChannel::gameManagerChannel:requestDidFailWithID:error: delegate 回调发送消息。
- 另请参阅
- lastUsedPlayerID
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerIdleRequest: | (id __nullable) | extraData | |
playerID: | (NSString *) | playerID | |
向接收器发送请求,使播放器进入 GCKPlayerStateIdle 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.playerID The player ID of the player to change the state.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerQuitRequest: | (id __nullable) | extraData |
向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateQuit 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- 另请参阅
- lastUsedPlayerID
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendPlayerQuitRequest: | (id __nullable) | extraData | |
playerID: | (NSString *) | playerID | |
向接收器发送请求,使播放器进入 GCKPlayerStateQuit 状态。
如果此次改换对相应玩家来说无效,或者没有上次使用的玩家 ID,则 GCKGameManagerChannelDelegate 中会触发错误。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.playerID The player ID of the player to change the state.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendGameRequest: | (id __nullable) | extraData |
向接收器发送游戏专用消息。
消息内容完全取决于应用。消息将来自 lastUsedPlayerID。接收者将通过 GCKGameManagerChannelDelegate 向此发送者发回回复。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接接收方 GameManager,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (NSInteger) sendGameRequest: | (id __nullable) | extraData | |
playerID: | (NSString *) | playerID | |
向接收器发送游戏专用消息。
消息内容完全取决于应用。消息将来自 playerID
。如果 playerID
为 nil
,则使用 lastUsedPlayerID。接收者将通过 GCKGameManagerChannelDelegate 向此发送者发回回复。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.playerID The id of the controllable player sending this message.
- 返回
- 请求 ID,如果请求无法发送,则为 kGCKInvalidRequestID。
- (void) sendGameMessage: | (id __nullable) | extraData |
向接收器发送游戏专用消息。
消息内容完全取决于应用。消息将来自 lastUsedPlayerID。这是一种“即发即弃”的方法,在这种情况下,不能保证邮件已发送,但收件人不会向此发件人发回回复。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.
- (void) sendGameMessage: | (id __nullable) | extraData | |
playerID: | (NSString *) | playerID | |
向接收器发送游戏专用消息。
这些消息内容完全取决于应用。消息将来自指定的本地玩家 ID。这是一种“即发即弃”的方法,采用这种方式时,不能保证邮件一定会发送,并且收件人不会将回复发回给发件人。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。
- Parameters
-
extraData Custom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil
.playerID The ID of the controllable player sending this message.
- (instancetype) initWithNamespace: | (NSString *) | protocolNamespace |
指定的初始化程序。
使用指定命名空间构造新的 GCKCastChannel。
- Parameters
-
protocolNamespace The namespace.
在 GCKGenericChannel 中实现。
- (void) didReceiveTextMessage: | (NSString *) | message |
在此频道上收到短信时调用。
默认实现是一个空操作。
- Parameters
-
message The message.
- (BOOL) sendTextMessage: | (NSString *) | message |
在此频道上发送短信。
- Parameters
-
message The message.
- 返回
- 成功时为
YES
,或者如果无法发送消息(由于通道未连接,或者发送缓冲区目前已满)。
- Deprecated:
- 使用可提供详细错误信息的 sendTextMessage:error:。
- (BOOL) sendTextMessage: | (NSString *) | message | |
error: | (GCKError *__nullable *__nullable) | error | |
在此频道上发送短信。
- Parameters
-
message The message. error A pointer at which to store the error result. May be nil
.
- 返回
- 如果成功,则发送
YES
;如果消息无法发送,则返回NO
。
- (NSInteger) generateRequestID |
为新消息生成请求 ID。
- 返回
- 生成的 ID,如果频道目前尚未关联,则为 kGCKInvalidRequestID。
- (NSNumber * __nullable) generateRequestNumber |
一种将 generateRequestID 结果封装在 NSNumber 中的便捷方法。
- 返回
- 生成的 ID,如果频道目前尚未关联,则为
nil
。
- (void) didConnect |
在连接此通道时调用,表示现在可以通过此通道与投放设备交换消息。
默认实现是一个空操作。
- (void) didDisconnect |
当此通道断开连接时调用,这表示无法再通过此通道与投放设备交换消息。
默认实现是一个空操作。
属性详情
|
readwritenonatomicweak |
用于从 GCKGameManagerChannel 接收通知的代理。
|
readnonatomicstrong |
游戏管理器的当前状态。
|
readnonatomiccopy |
|
readnonatomicassign |
此渠道是否已与接收者的游戏管理器关联,我们已准备好与其互动。
此方法将从创建此渠道时返回 NO
。
- 返回
YES
如果此渠道已连接到接收者的游戏管理器,并且已准备好与它互动,则NO
否则。
|
readnonatomiccopyinherited |
频道的命名空间。
|
readnonatomicassigninherited |
一个标记,指示此频道目前是否已连接。
|
readnonatomicweakinherited |
已注册此渠道的设备管理器(如果有)。
- Deprecated:
- 如果此频道未在已弃用的 GCKDeviceManager 类中注册,此 ID 将为
nil
。