套接字异常:没有到主机的路由



有人能告诉我为什么IPhone 11在尝试通过互联网连接到设备时阻止Unity应用程序使用Wi-Fi网络吗?而另一款拥有相同ios版本和相同Unity应用程序的IPhone 7却无法做到这一点!!

我正在使用C#System.Net.Sockets函数制作一个TCP客户端应用程序,它在Unity模拟器和Android设备中都能很好地工作,这个问题只发生在我的IPhone 11上。

检查了所有的防火墙和限制,一切似乎都一样,但仍然得到相同的错误:SocketException:没有到主机的路由

这是我使用的功能:

public string IP = "192.168.1.80"; // or a public IP that forwards the request to the specified Local IP via the chosen Port
public Int32 Port = 5000;
byte[] SendBuf;
byte[] RecBuf;
int i;
TcpClient TcpClient1;
NetworkStream serverStream;
Stopwatch Time = new Stopwatch();
public Int16 MyFunction(UInt16 A, UInt16 data)
{
Int16 RetVal = 0;
TcpClient1 = new TcpClient(AddressFamily.InterNetwork);
TcpClient1.Connect(IP, Port);
// here I write my code ...
serverStream.Close();
TcpClient1.Close();
Time.Stop();
return RetVal;
}

当您通过与PC不同的网络连接手机时,可能会发生这种情况。不同的网络可能有不同的防火墙规则。

PC通常通过内部网络(通常为以太网(连接。而手机通常通过具有更强防火墙规则的WIFI连接。

最新更新