【问题标题】:How can I implement DNS - Service Discovery in Unity3D similar to Bonjour browser如何在 Unity3D 中实现 DNS - 服务发现,类似于 Bonjour 浏览器
【发布时间】:2017-06-11 02:13:15
【问题描述】:

我想实现一个服务发现模块来获取服务广播设备的 IP 地址,类似于 bonjour 浏览器。是否可以在 Unity3D(Android/iOS)中实现它。谁能指导我如何实现它。一个小例子会很有帮助。 谢谢

编辑 1:IOT 设备正在广播 DNS 服务,我想在 Unity 应用程序中获取此服务以查找 IOT 设备的 IP 地址。我无权访问 IOT 设备软件或源代码。

【问题讨论】:

    标签: c# service bonjour discovery dns-sd


    【解决方案1】:

    这是一个用于发现 DNS 服务的 iOS 插件: https://docs.unity3d.com/Manual/PluginsForIOS.html

    【讨论】:

      【解决方案2】:

      您不必从头开始执行此操作。有一个名为 NetworkDiscovery 的新 Unity API 旨在简化此操作。

      要查找要连接的 IP 地址,请在 Start() 函数中调用服务器端的 NetworkDiscovery.StartAsServer() 一次。

      在客户端,调用NetworkDiscovery.StartAsClient(),然后实现OnReceivedBroadcast(string fromAddress, string data);函数。找到服务器后,将调用OnReceivedBroadcast(string fromAddress, string data);函数,然后您可以使用返回的fromAddress值连接到您的服务器。

      当客户端连接时,您可以通过调用NetworkDiscovery.StopBroadcast()停止广播。

      如果您只是为了学习目的而这样做,您只需要使用 UDP 协议进行广播。更多信息可以阅读thisthis

      【讨论】:

      • 我已经尝试过 NetworkDiscovery 类,它工作正常。但是这里广播的第 3 方设备不是我的统一客户端。所以这个服务在 OnReceivedBroadcast() 函数中是不可见的。我可以在同一设备上的 Bonjour 浏览器应用程序中看到第 3 方设备广播的服务,而在 Bonjour 浏览器应用程序上看不到来自 Unity 客户端(编辑器/设备)的 UDP 广播。
      • 我在问题的第二部分也提到了这一点。 如果您只是出于学习目的这样做,您只需要使用 UDP 协议进行广播。有关详细信息,您可以阅读此内容和此内容。 请查看这两个链接以了解如何操作。第一个链接解释了它是如何工作的。第二个链接显示了如何使用 UDP 在网络上进行广播。这就是你想要的。
      • 我无法使用 NetworkDiscovery 或 UDPClient 实现它。它只显示我使用 NetworkDiscovery 进行的广播 - 开始广播和 UDP 广播。在 Bonjour 浏览器应用程序中,我还看到连接到网络的打印机。我已经使用 ServiceListener 类在本机 android 中成功实现了它。请您进一步指导我。谢谢
      • 我的情况:用 .local 标识自己的框不是计算机,因此我无法对其进行编程。 (它是一个带有专有应用程序来控制它的 DSP。)我希望根据它的 .local 名称连接到它。
      • @Ubuntourist 不管是不是电脑。只要它通过网络/wifi,它应该可以工作。使用 Wireshark 查看它使用哪种协议来广播自己。这通常是 UDP,但使用 Wireshark 进行验证,然后查看它到底在发送什么。如果是 UDP,请阅读我的答案的第二部分,其中包含指向 UDPClient 示例的链接。这可用于检测该设备。请注意,没有人会为您免费复制一个priopetry api。这简直太费时了。您必须按照我的指示自己做付钱请人为您做。
      猜你喜欢
      • 1970-01-01
      • 2020-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-27
      • 2012-01-04
      • 2017-11-17
      • 1970-01-01
      相关资源
      最近更新 更多