總覽
用於遊戲控製作業的 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 設為上次使用的玩家 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::gameManagerChannel:requestdoesFailWithID:error:如果 GCKGameManagerChannel 尚未連線至接收器的遊戲管理員,就可以委派回呼。
- 另請參閱
- 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
代表成功,如果無法傳送訊息,則為NO
(因為頻道未連線,或是傳送緩衝區過短)。
- 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 |
連上這個通道後呼叫,表示現在可以透過此管道與 Cast 裝置交換訊息。
預設實作為免人工管理。
- (void) didDisconnect |
在這個管道中斷連線後傳送,表示訊息無法再透過此管道與 Cast 裝置交換。
預設實作為免人工管理。
資源詳細資料
|
readwritenonatomicweak |
接收 GCKGameManagerChannel 通知的委派項目。
|
readnonatomicstrong |
遊戲管理員的目前狀態。
|
readnonatomiccopy |
|
readnonatomicassign |
這個頻道是否與接收器的遊戲經理建立連結,我們隨時可與該頻道互動。
這個方法會傳回此管道建立之後的 NO
。
- 傳回
YES
:如果這個頻道已連結至接收者的遊戲經理,且可與對方進行互動,否則為NO
。
|
readnonatomiccopyinherited |
頻道的命名空間。
|
readnonatomicassigninherited |
此標記指出此頻道是否已連結。
|
readnonatomicweakinherited |
註冊這個頻道的裝置管理員 (如果有的話)。
- Deprecated:
- 如果這個管道並未註冊已淘汰的 GCKDeviceManager 類別,就會是
nil
。