我正在尝试在一台运行.NET客户端服务器的PC和一台安卓设备之间进行双向通信(代码是用Basic4Android编写的)。从Android发送到PC工作正常,当我尝试从PC发送到Android时出现问题。我正在尝试使用ServerSocket,但当PC尝试连接到安卓设备时,超时并引发异常。我使用的代码如下:
PC .NET
Dim sock As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
sock.Connect(remoteip, 8565)
Dim buffer() As B
我的android手机和PC都是用USB连接的。现在我可以从我的手机切换到我的电脑上了吗?这可能吗?我还能从电脑上打电话到手机上吗?如果是的话,用什么IP,我应该打我的手机?注意:
我的宏达电手机和个人电脑不在同一个网络里。
HTC手机有GSM网络连接。
下面,我将我的示例代码添加到ping PC和HTC移动设备中。
例:
客户代码:
Socket socket = new Socket("10.51.2.98", 1234);//trying to ping my PC ip address
服务器代码:
channel.sin_family = AF_I
在将手机升级到安卓9后,从ESP32应用程序在Xamarin.Forms上监听3000端口的TCP套接字不再工作。在Android 8上,这是可行的,但更新后不能打开。
应用程序引发以下异常:
System.InvalidOperationException: The operation is not allowed on non-connected sockets.
我已经尝试过一些解决这个问题的方法:
在工作的旧手机(Android 6)上试用这个应用程序
尝试使用netcat从ESP32上打开工作的套接字
尝试从工作的应用程序中打开pc上的套接字
尝试从智能手机上的另一个
这是Android与PC之间的通信问题。智能手机是等待连接的主机,当pc连接时,智能手机会继续向pc发送信息。 即使智能手机重启,我也要重新连接tcp。即使在重新启动后,智能手机仍在等待再次连接。如果智能手机被关闭,连接的值仍然是“true”。并接收到'null‘值。这个时候我应该怎么做才能再次连接? TcpClient MyTcpClient;
int myPort = 4000;
StreamWriter MyWriter;
StreamReader MyReader;
int port = GetFreePort();
MyTcpClient = new TcpClient