对于我的Android应用,用户需要连接到将托管在同一LAN上某处的服务器。同一LAN上可以托管多个服务器。为了方便用户使用,我将扫描与Android设备连接的当前LAN,然后列出所有运行服务器的网络设备,而不是让用户将IP输入计算机手动。
我是刚接触网络的人,经过一番搜索后,我发现我必须使用多播DNS搜索或UDP广播来检测其他设备。我还找到了一个很好的库,名为jmDNS,尽管在该库上几乎没有文档和示例代码。有人可以为我为节省时间而试图做的事情指出正确的方向(主要是如果我的工作方向正确)?我假设我必须对服务器进行一些修改才能广播它吗?如果我将IP手动输入到应用程序的配置页面中,它将完全按预期工作。此外,这仅需要发现Windows计算机,而不需要确定是否重要。提前致谢。
最佳答案
好吧,jmDNS是可以用于设置的完整Java库。它可以用于广播其他客户端可以搜索的服务。
尽管肯定有可能,但Windows上的Bounjour服务有点棘手。我想说的更简单的方法是使用jmDNS进行服务器和客户端的广播和发现。