2012-05-20 22 views
0

我正在開發一個超過2個玩家的多人遊戲。我希望玩家接近能夠在不使用網絡或服務器的情況下玩遊戲。例如,3人在公共汽車或汽車中使用非3G平板電腦。遊戲是基於回合的,不是實時。因此,有幾個問題。在android中的近距離多人通信

  1. 有沒有人有通過藍牙同時連接2個以上設備的工作示例?
  2. 堅持與BT:需要多長時間來建立和斷開連接?連接到單個設備,發送/接收更新,斷開連接,重複...
  3. 我可以使用Wi-Fi嗎?換句話說,Android設備可以在不使用外部路由器的情況下形成網絡嗎?

我熟悉套接字編程;我也看到了BT聊天的例子。如果可能的話,我想避免使用任何第三方引擎。

回答

2

1 - 我不這樣做,但我遇到過其他人在SO上的評論。

2 - 問題是第一次查找。當一個新玩家到達並想加入時,他必須找到現有微微網參與通信。即使他之前與這些人聯繫過,他也不知道他們目前的交流時間,我認爲他的設備需要5秒鐘才能找到。如果他斷線並重新建立下一輪,那麼它應該沒問題 - 只要時鐘漂移不是太差,他仍然能夠快速連接。

其他一切都比較快,但我毫不猶豫地給出數字,因爲我沒有太多的經驗在Android上做這種事情。我會說雖然「發送/接收更新」的延遲與本地W-Fi通信處於同一個球場,但這不會成爲問題。

3 - 是的,如果其中一個設備具有Wi-Fi熱點功能,或者W-Fi Direct可能適合(不知道該功能本人),但他們都必須擁有該功能不太可能。使用Wi-Fi的另一個問題是,這個新連接取代了他們現有的連接,這些連接可能用於他們的互聯網訪問。總的來說,我認爲使用藍牙技術可能會很棘手(並且在各種實現中肯定存在缺陷),但我仍然認爲這是您描述的場景的最佳選擇。