向所有可用的WiFi机器广播消息

6 投票
2 回答
1624 浏览
提问于 2025-04-17 14:21

抱歉如果这个问题很简单。

我最近开始学习安卓编程,正在写一个简单的应用程序,让你的安卓设备可以作为你Windows电脑的控制器。具体来说,它可以让用户做一些事情,比如关机、让电脑进入睡眠状态、重启等等。我现在在Windows电脑上使用一个叫CherryPy的Python库作为服务器,来执行实际的win32api调用,以完成这些功能。不过,我不太确定怎么动态发现网络上哪个机器在运行这个服务器。如果我在安卓应用里直接写上我机器的公网IP,一切都能正常工作,但显然这样不太理想。我考虑过让用户手动输入他们机器的公网IP,但如果有办法,比如说,向WiFi上的所有机器广播一个快速消息,然后检查我的Python服务器发送的预设响应,那就太好了。这可能吗?

提前谢谢大家。

2 个回答

2

试着向一个特殊的广播地址 255.255.255.255 发送一个UDP数据包。网络中的每个设备都应该能收到这个数据包的副本(当然,如果没有防火墙的话)。你可以设置服务器,让它对这个数据包进行回复,告诉你它的身份。

1

框架来编写你的应用程序。AllJoyn会帮你处理这些细节。

撰写回答