我做了一個簡單的遊戲,它使用來自GameKit的GKSession連接到其他同伴。這很容易設置,但我發現了一些問題:如何在與GKSession進行點對點時獲得精確的時鐘同步?
延遲變化很大。有時消息立即到達其他設備。有時向其他對等方發送數據的延遲時間大於1秒。數據只是一個包含10個字符的字符串。
我的遊戲取決於精確的時鐘同步。遊戲具有音樂播放功能,當它不在所有連接的設備上同時播放時,聽起來很奇怪。
我找不到關於如何slenchroize時間的文檔中的任何東西。問題在於,開始遊戲的「主」碼頭立即開始播放音樂,然後所有其他碼頭稍後收到該消息,從而在延遲後開始播放。
然後,我試圖在將啓動消息發送到所有碼頭後延遲播放遊戲音樂,但是有時延遲會更低或更高,並且我無法獲得可靠的同步。
有沒有一個開源的框架,使對等和時鐘同步更可靠,更容易在iOS上使用?
在iOS你獲得時鐘同步的最精確的方法是GPS。這不是你想要的。 – Sentinel