6

如果这是一个微不足道的问题,我深表歉意。

我最近开始做一些 android 编程,我正在编写一个简单的应用程序,它允许你使用你的 android 设备作为你的 windows PC 的控制器。具体来说,它允许用户执行诸如关闭机器、使其睡眠、重新启动等操作。我目前正在使用名为 CherryPy 的 python 库作为 Windows 机器上的服务器来执行实际的 win32api 调用以执行所需的功能。我不确定的是如何(动态地)发现网络上的哪台机器实际上正在托管服务器。如果我将我的机器公共 IP 硬编码到 android 应用程序中,一切都会正常工作,但显然这远不理想。我考虑过让用户在应用程序中手动输入他们的机器公共 IP,但是如果有办法,比如说,向 WiFi 上的所有机器广播一条快速消息,并检查我的 Python 服务器会发出的预先准备好的响应,这太棒了。那可能吗?

提前谢谢各位。

4

2 回答 2

2

尝试向特殊广播地址255.255.255.255发送 UDP 数据包。网络中的每个设备都应该收到该数据包的副本(防火墙除外),您可以安排让服务器以其身份回复数据包。

于 2013-01-31T21:03:17.240 回答
1

框架 编写您的应用程序。AllJoyn将为您处理这些细节。

于 2013-01-31T21:13:15.580 回答