簡體   English   中英

GKTurnBasedMatch檢測邀請

[英]GKTurnBasedMatch detect invitation

我有一個視圖,列出了本地播放器(已注冊為偵聽器)的所有可用匹配項。 我的問題是,我希望我的名單在玩家收到新比賽邀請時更新。

我嘗試實現:

func player(_ player: GKPlayer, didAccept invite: GKInvite) {

}

func player(_ player: GKPlayer, didRequestMatchWithOtherPlayers playersToInvite: [GKPlayer]) {

}

但是這些方法永遠不會被調用。

我確實收到了其他事件的通知,例如turnBasedMatchmakerViewController(_ viewController: GKTurnBasedMatchmakerViewController, didFind match: GKTurnBasedMatch)player(_ player: GKPlayer, receivedTurnEventFor match: GKTurnBasedMatch, didBecomeActive: Bool)

另外,我確實從屏幕頂部的Game Center中獲得了橫幅,並且如果點擊它,它確實會記錄轉彎事件,但是它只會檢測到何時收到邀請。

有什么建議么?

我寫了一個錯誤,抱怨didAcceptInvite從不觸發。 蘋果關閉了一個有意的錯誤,即didAcceptInvite僅適用於實時比賽(即使文檔中沒有說明)。

我想做與您描述的相同的事情:提供一個始終最新的匹配項列表。 盡管有游戲中心的通知,但我從未發現可以檢測到自己的事件。

最后,我將表放在單獨的視圖上,並在每次顯示視圖或用戶拉動刷新視圖中的表時查詢所有匹配項的列表。 我考慮過使用計時器定期刷新列表,但實際上並沒有走那么遠。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM