【发布时间】:2013-07-17 18:21:01
【问题描述】:
我在本地网络上的 MacBook Pro 上运行了 Bonjour 服务,我试图在 Android 设备 (Galaxy Nexus) 上的客户端应用程序中检测到该服务。
我已经通过两种方式实现了 Bonjour 服务发现。第一种是通过Android的NSD包,详细here。我已经实现了他们在“发现网络上的服务”部分中建议的代码。它可以很好地发现我的服务,但是没有 API 调用来访问该服务的 txt 记录,我需要访问这些记录,因此我可以构建 URL 以访问该服务,从而使这种方法成为一种破坏交易的方法,直到我可以访问它。
这促使我尝试了 Bonjour 服务发现的另一种方法,在“发现附近的服务”部分详细介绍了 here,因为他们有一个用于 txt 记录发现的 API。我知道服务发现开始了,因为它没有记录任何错误,但是这种方法没有为我发现任何 Bonjour 服务,甚至不是 Apple 默认在其 MacBook 上拥有的所有服务。它的实施与他们网站上的完全一样,那么我需要做些什么来完成这项工作?除了 Bonjour 服务之外,我的 MacBook 是否需要运行其他东西才能被识别为 WiFi-Direct 设备?或者这只是在此设置下使用 Android 的 API 是不可能的,在 Android 的 API 更加完整/记录在案之前,我是否应该寻找 JmDNS 之类的库来做我需要的事情?
对于这些新的 Nsd API,除了 Android 提供的(不是非常详尽的)文档之外,似乎很少有文档,因此,如果其他人深入研究此内容并可以提供更多指导,我们将不胜感激!
【问题讨论】:
标签: android bonjour wifi-direct