在 UWP TcpListener AcceptTcpClientAsync 中不起作用

In UWP TcpListener AcceptTcpClientAsync doesn't work

我正在移植一些 TcpListener/TcpClient/etc 代码以在 UWP 上工作。但是,在通用 windows c# 应用程序中工作的最基本操作在 UWP 下对我来说失败了。

最基本的操作,例如等待 TcpClient 失败:

private async Task TestTcpListening()
{
    Debug.WriteLine("Creating TcpListneer");
    int portNumber = 8554;
    TcpListener listener = new TcpListener(IPAddress.Any, portNumber);
    listener.Start();

    while(true)
    {
        Debug.WriteLine("Waiting on TcpListener to accept client");
        TcpClient client = await listener.AcceptTcpClientAsync();
        Debug.WriteLine(string.Format("We got a client! {0}", client));
    }
}

如果我在通用 windows 控制台应用程序中 运行 这段代码,当我触发本地主机 URL 时 "We got a client" 位 运行s。如果此 运行s 在 UWP 应用程序中,它将永远等待并且调用应用程序超时。

备注:

想法:

作为 Windows 开发的新手,尤其是 UWP,我不知道环回限制。目前,为了测试我的 RTSP 端口,在同一网络上的另一台计算机上使用 VLC 解决了我的上述问题。