也许任何人都可以帮助我解决这个问题。我有一个 UDP 发送器控制台应用程序,该应用程序应将 udp 包发送到使用 unity 2019.3.4 制作的 HoloLens2 的 UWP 应用程序。在 Unity 编辑器中运行时,应用程序会正确接收从控制台应用程序发送的所有包。 但是,如果我使用 Visual Studio 生成解决方案并将其成功部署到 Hololens 模拟器 (V. 10.0.18362....( 上,则应用程序不会收到任何数据。 早些时候,当我通过USB将Hololens2与计算机连接时,在HoloLens2设备上运行的应用程序正确接收了数据,但目前我被迫使用模拟器。一切都必须在没有互联网访问的本地网络中工作。 有没有办法通过本地主机设置与模拟器的 udp 连接?
控制台应用和模拟器是否在同一台电脑上运行? 模拟器在 NAT 后面运行,因此默认情况下它无法看到来自网络上其他设备的流量。 但是,您可以添加端口映射以允许选择流量进入模拟器。 有关详细信息,请参阅 https://learn.microsoft.com/en-us/windows/mixed-reality/using-the-hololens-emulator#nat-configuration-tab。
我不确定它是否有帮助,但本月发布了一个新的模拟器。如果你的HoloLens 2当前已更新,它将匹配当前的HoloLens OS。 https://learn.microsoft.com/windows/mixed-reality/using-the-hololens-emulator#installing-the-hololens-emulator 这将是版本 10.0.19041...
我终于弄清楚了问题可能是什么。我使用数据报套接字来设置应用程序和模拟器项目之间的连接。 在Microsoft文档以及这个统一性问题中,他们提到数据报套接字无法建立与localHost的连接。由于我可以成功绑定我的套接字并且只是没有接收数据,我想这就是问题所在。我将尝试改用 UWP 共享合约。
https://learn.microsoft.com/en-us/windows/uwp/networking/sockets https://forum.unity.com/threads/uwp-for-wmr-datagramsocket-not-receiving-udp-data.586147/