6

これが些細な質問である場合は、お詫び申し上げます。

私は最近いくつかのAndroidプログラミングを始めました、そして私はあなたがあなたのWindowsPCのためのコントローラーとしてあなたのAndroidデバイスを使うことを可能にする簡単なアプリを書いています。具体的には、ユーザーがマシンの電源を切ったり、スリープ状態にしたり、再起動したりすることができます。現在、WindowsマシンのサーバーとしてCherryPyというPythonライブラリを使用して、実際のwin32api呼び出しを実行して目的の実行を行っています。働き。私がよくわからないのは、ネットワーク上のどのマシンが実際にサーバーをホストしているかを(動的に)検出する方法です。マシンのパブリックIPをAndroidアプリにハードコードすると、すべてが正常に機能しますが、明らかにそれは理想的とは言えません。ユーザーがアプリに自分のマシンのパブリックIPを手動で入力することを検討しましたが、たとえば、WiFi上のすべてのマシンにクイックメッセージをブロードキャストし、Pythonサーバーが送信する事前に用意された応答を確認します。これはすばらしいことです。それは可能ですか?

よろしくお願いします。

4

2 に答える 2

2

特別なブロードキャストアドレス255.255.255.255にUDPパケットを送信してみてください。ネットワーク内のすべてのデバイスは、そのパケットのコピーを受信する必要があり(ファイアウォールを除く)、サーバーがそのIDでパケットに応答するように調整できます。

于 2013-01-31T21:03:17.240 に答える
1

フレームワークを使用してアプリを作成します。 AllJoynがこれらの詳細を処理します。

于 2013-01-31T21:13:15.580 に答える