基本的に、あるクライアントから別のクライアントにコマンドとメッセージを転送するサーバー アプリケーションを開発しています。ただし、これらのクライアントは 2 つの異なるアプリケーションです。1 つは、もう 1 つの "リモート コントロール" として機能する Android デバイス上のアプリです。
これらのアプリケーションのいずれかを起動すると、ソケットを介してオンライン サーバーに登録されます。さて、私の質問は次のとおりです。私のサーバーは、それを処理した後、どのような種類のクライアントを扱っているかをどのように知ることができますServerSocket.accept()
か?
私は2つの可能な解決策を思いつきました:
1: 2 つの異なるポートで 2 つの ServerSockets を開きます。1 つのアプリケーションが 1 つのポートに接続し、別のアプリケーションが別のポートに接続します。
2: 接続後、クライアントはクライアントの識別子を含む文字列を送信します。
ただし、おそらくこれら 2 つよりもはるかに多くの (そしてより優れた) ソリューションがあるので、皆さんが何を好むかを知りたいと思います。このジレンマに陥ったのは私が初めてではないことは確かです。:)