0

そのようにp2pで動作する(Android)アプリケーションを構築したい

サーバー (ピアのリスト (ユーザー名と IP))

&

電話(サーバーからピアのリストを取得し、それらの間でソケットチャットを作成します(電話から電話へ)、サーバーは関与しません)

これまでのところ、サーバーと、メッセージを送信し、別のサーバー (最終的には他のクライアントの電話になります) によって受信される電話クライアントをセットアップしました。しかし、電話に NAT 経由で IP が割り当てられているという問題に遭遇し、NAT Traversal を実行する必要があります。

NAT トラバーサルを行うためのより簡単なオプションはありますか? おそらく、libjingle を含む XMPP ポートを使用しますか? (アラアスマック)。または、JSTUNまたはAndroid用の他のフレームワークを使用する必要がありますか? 皆さんは何をお勧めしますか?

ありがとう

4

1 に答える 1

0

チェックアウト: Kryonet .

Kryonet を介してわずか 1 行のコードで LAN 接続内のサーバーを検出し、すべてのクライアントのアドレスを取得して、アプリケーションの設計に基づいて接続を試みることができます。

例としてチャット アプリケーションもあり、Kryonet はデスクトップと Android デバイスで実行されます。

静的グローバル IP を持っている場合、Kryonet を使用して非常に簡単にサーバー コードを記述できます。これは、オンライン ユーザーとその IP のマップを保持し、同じ LAN にない場合に P2P 接続を確立するためにホール パンチングを実行できます。 .

于 2014-03-17T09:21:47.060 に答える