GCKGameManagerChannel 类

GCKGameManagerChannel 类参考文档

概览

用于游戏控制操作的 GCKCastChannel 子类。

如需了解委托协议,请参阅 GCKGameManagerChannelDelegate

Deprecated:
Game Manager API 不再受支持,并将在未来的版本中移除。

继承 GCKCastChannel

实例方法摘要

(instancetype) - initWithSessionID:
 指定的初始化程序。更多...
 
(instancetype) - init
 默认初始化程序不可用。更多...
 
(NSInteger) - sendPlayerAvailableRequest:
 向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateAvailable 状态。更多...
 
(NSInteger) - sendPlayerAvailableRequest:playerID:
 向接收器发送请求,使播放器进入 GCKPlayerStateAvailable 状态。更多...
 
(NSInteger) - sendPlayerReadyRequest:
 向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateReady 状态。更多...
 
(NSInteger) - sendPlayerReadyRequest:playerID:
 向接收器发送请求,使播放器进入 GCKPlayerStateReady 状态。更多...
 
(NSInteger) - sendPlayerPlayingRequest:
 向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStatePlaying 状态。更多...
 
(NSInteger) - sendPlayerPlayingRequest:playerID:
 向接收器发送请求,使播放器进入 GCKPlayerStatePlaying 状态。更多...
 
(NSInteger) - sendPlayerIdleRequest:
 向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateIdle 状态。更多...
 
(NSInteger) - sendPlayerIdleRequest:playerID:
 向接收器发送请求,使播放器进入 GCKPlayerStateIdle 状态。更多...
 
(NSInteger) - sendPlayerQuitRequest:
 向接收器发送请求,将此发送者上次使用的播放器设为 GCKPlayerStateQuit 状态。更多...
 
(NSInteger) - sendPlayerQuitRequest:playerID:
 向接收器发送请求,使播放器进入 GCKPlayerStateQuit 状态。更多...
 
(NSInteger) - sendGameRequest:
 向接收器发送游戏专用消息。更多...
 
(NSInteger) - sendGameRequest:playerID:
 向接收器发送游戏专用消息。更多...
 
(void) - sendGameMessage:
 向接收器发送游戏专用消息。更多...
 
(void) - sendGameMessage:playerID:
 向接收器发送游戏专用消息。更多...
 
(instancetype) - initWithNamespace:
 指定的初始化程序。更多...
 
(void) - didReceiveTextMessage:
 在此频道上收到短信时调用。更多...
 
(BOOL) - sendTextMessage:
 在此频道上发送短信。更多...
 
(BOOL) - sendTextMessage:error:
 在此频道上发送短信。更多...
 
(NSInteger) - generateRequestID
 为新消息生成请求 ID。更多...
 
(NSNumber *__nullable) - generateRequestNumber
 一种将 generateRequestID 结果封装在 NSNumber 中的便捷方法。更多...
 
(void) - didConnect
 在连接此通道时调用,表示现在可以通过此通道与投放设备交换消息。更多...
 
(void) - didDisconnect
 当此通道断开连接时调用,这表示无法再通过此通道与投放设备交换消息。更多...
 

属性摘要

id< GCKGameManagerChannelDelegatedelegate
 用于从 GCKGameManagerChannel 接收通知的代理。更多...
 
GCKGameManagerStatecurrentState
 游戏管理器的当前状态。更多...
 
NSString * lastUsedPlayerID
 此会话中使用的最后一个可控玩家 ID。更多...
 
BOOL isInitialConnectionEstablished
 此渠道是否已与接收者的游戏管理器关联,我们已准备好与其互动。更多...
 
NSString * protocolNamespace
 频道的命名空间。更多...
 
BOOL isConnected
 一个标记,指示此频道目前是否已连接。更多...
 
GCKDeviceManagerdeviceManager
 已注册此渠道的设备管理器(如果有)。更多...
 

方法详细信息

- (instancetype) initWithSessionID: (NSString *)  castSessionID

指定的初始化程序。

自动连接到接收者的游戏管理器。

Parameters
castSessionIDThe 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
extraDataCustom 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
extraDataCustom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil.
playerIDThe 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
extraDataCustom 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
extraDataCustom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil.
playerIDThe 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
extraDataCustom 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
extraDataCustom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil.
playerIDThe 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
extraDataCustom 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
extraDataCustom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil.
playerIDThe 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
extraDataCustom 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
extraDataCustom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil.
playerIDThe 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
extraDataCustom 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。如果 playerIDnil,则使用 lastUsedPlayerID。接收者将通过 GCKGameManagerChannelDelegate 向此发送者发回回复。只有在收到 gameManagerChannelDidConnect: (GCKGameManagerChannelDelegate-p) 委托回调后,才能调用此方法。如果 GCKGameManagerChannel 尚未连接到接收者的游戏管理器,则向 gameManagerChannel:requestDidFailWithID:error: (GCKGameManagerChannelDelegate-p) 委托回调发送消息。

Parameters
extraDataCustom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil.
playerIDThe 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
extraDataCustom 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
extraDataCustom application-specific data to pass along with the request. Must either be an object that can be serialized to JSON using NSJSONSerialization, or nil.
playerIDThe ID of the controllable player sending this message.
- (instancetype) initWithNamespace: (NSString *)  protocolNamespace

指定的初始化程序。

使用指定命名空间构造新的 GCKCastChannel

Parameters
protocolNamespaceThe namespace.

GCKGenericChannel 中实现。

- (void) didReceiveTextMessage: (NSString *)  message

在此频道上收到短信时调用。

默认实现是一个空操作。

Parameters
messageThe message.
- (BOOL) sendTextMessage: (NSString *)  message

在此频道上发送短信。

Parameters
messageThe message.
返回
成功时为 YES,或者如果无法发送消息(由于通道未连接,或者发送缓冲区目前已满)。
Deprecated:
使用可提供详细错误信息的 sendTextMessage:error:
- (BOOL) sendTextMessage: (NSString *)  message
error: (GCKError *__nullable *__nullable)  error 

在此频道上发送短信。

Parameters
messageThe message.
errorA 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

当此通道断开连接时调用,这表示无法再通过此通道与投放设备交换消息。

默认实现是一个空操作。

属性详情

- (id<GCKGameManagerChannelDelegate>) delegate
readwritenonatomicweak

用于从 GCKGameManagerChannel 接收通知的代理。

- (GCKGameManagerState*) currentState
readnonatomicstrong

游戏管理器的当前状态。

- (NSString*) lastUsedPlayerID
readnonatomiccopy

此会话中使用的最后一个可控玩家 ID。

如果没有使用接收器设置可控制的播放器,该参数可能为 nil

另请参阅
- sendPlayerAvailableRequest:
- (BOOL) isInitialConnectionEstablished
readnonatomicassign

此渠道是否已与接收者的游戏管理器关联,我们已准备好与其互动。

此方法将从创建此渠道时返回 NO

返回
YES 如果此渠道已连接到接收者的游戏管理器,并且已准备好与它互动,则NO否则。
- (NSString*) protocolNamespace
readnonatomiccopyinherited

频道的命名空间。

- (BOOL) isConnected
readnonatomicassigninherited

一个标记,指示此频道目前是否已连接。

- (GCKDeviceManager*) deviceManager
readnonatomicweakinherited

已注册此渠道的设备管理器(如果有)。

Deprecated:
如果此频道未在已弃用的 GCKDeviceManager 类中注册,此 ID 将为 nil