6

在我的环境中,我有一部 Android 智能手机和一些其他设备。其他设备正在运行linux。所有设备都通过 Wifi 连接到本地网络。现在我想让智能手机识别和发现网络中的其他设备,所以我需要实现某种服务发现。在其他设备上应该不需要用户交互。之后,两个设备应该能够相互配对。

我读过 Android 支持Network Service Discovery (NSD)。这是一件好事,但这似乎只适用于 Android 设备,对吧?就我而言,其他设备是运行嵌入式 linux 的自定义硬件。编程语言也不相同。其他设备上的应用程序是使用 C++ 实现的。

我还阅读了有关简单服务发现协议 (SSDP)的信息。我想这应该以独立于平台的方式工作,对吧?您能否简单解释一下如何使用 SSDP 实现这一点?
你会推荐 SSDP 来实现服务发现吗?有没有适用于 android 和 c++ 的有用库?

或者你能建议其他方法来实现我想要做的事情吗?

问候

4

1 回答 1

0

我们在 iOS 和 Mac 设备之间做了类似的事情:http: //www.multicastdns.org/

您也可以使用广播 UDP 实现自己的;但请注意,某些网络基础设施可能会阻止这些类型的数据包(企业网络)。

于 2014-09-13T22:39:23.770 回答