ネットワーク通信を含む最初のプロジェクトを試みる準備をしています。これは、自己学習を目的とした単なるおもちゃのアプリです。ここではミッションクリティカルなものは何もありません。相互に通信するには2つのノードが必要です。1つはAndroidプラットフォームになるので、Javaを使用します。もう1つのノードは、DebianLinuxを実行しているRaspberryPiになります。私はこの目的でもJavaを使用でき、おそらくRPCを使用することもできますが、私がやりたいのは、2人が通信するための独自の小さな実装に依存しないTCP / IP「プロトコル」を開発し、それぞれに実装させることです。一番。「プロトコル」とは、標準のメッセージセットを、それぞれにいくつかの値とともに受け渡したいということです。例えば:
"Protocol" Definition:
MESSAGE TYPE A (Float arg, Int arg)
MESSAGE TYPE B (Int arg)
MESSAGE TYPE C (Int arg, String arg, Int arg)
「会話」の例:
Node 1 Node 2
A(5.4, 4) --->
B(6) --->
<---- C(3, 'Hello', 0xFF)
B(5) --->
<---- A(43.0, 16)
だから私の質問は:
(1)上記は意味がありますか?意図を明確にする必要がありますか?詳細情報を提供しますか?これは、実行中の2つのプログラム間のネットワーク通信への私の最初の失敗であるため、私が求めているものはかなりオフベースである可能性があります。私がこれに間違った方法でアプローチしている場合、私はより良い推奨事項を喜んでいます。
(2)どうすればいいですか?1つの長い文字列をTCPパケットに詰め込むだけですか?もっと良い方法はありますか?
ありがとう!