发送套接字时出错[WinError 10061]无法建立连接,因为目标计算机主动拒绝从Python到Android的套接字连接
我正在从python脚本向android手机发送套接字,反之亦然。当我的android向我的python脚本发送数据包时,它可以工作,但从python脚本向android发送数据包时会出现以下错误:发送套接字时出错[WinError 10061]无法建立连接,因为目标计算机主动拒绝从Python到Android的套接字连接,android,python,sockets,Android,Python,Sockets,我正在从python脚本向android手机发送套接字,反之亦然。当我的android向我的python脚本发送数据包时,它可以工作,但从python脚本向android发送数据包时会出现以下错误: Error sending socket [WinError 10061] No connection could be made because the target machine actively refused it 注意:从android发送到python时,函数使用不同的套接字和端
Error sending socket [WinError 10061]
No connection could be made because the target machine actively refused it
注意:从android发送到python时,函数使用不同的套接字和端口。错误发生在此处s.connect((主机、端口))
下面是我发送数据包的python代码:
try:
s = socket.socket()
host = "ip_address_of_android"
port = 7801
s.connect((host, port))
print("connected")
s.listen(5)
print("sending")
text = "hello"
s.sendall(text.encode())
s.close()
except Exception as e:
print("Error sending socket ", e)
public String receives() {
Socket socket;
DataInputStream ds;
try {
socket = new Socket("ip_address_of_android", 7801);
ds = new DataInputStream(socket.getInputStream());
boolean done = false;
while (!done) {
result = ds.readUTF();
}
} catch (Exception e) {
System.out.print("error");
}
return result;
}
下面是我的android studio代码,用于接收数据包:
try:
s = socket.socket()
host = "ip_address_of_android"
port = 7801
s.connect((host, port))
print("connected")
s.listen(5)
print("sending")
text = "hello"
s.sendall(text.encode())
s.close()
except Exception as e:
print("Error sending socket ", e)
public String receives() {
Socket socket;
DataInputStream ds;
try {
socket = new Socket("ip_address_of_android", 7801);
ds = new DataInputStream(socket.getInputStream());
boolean done = false;
while (!done) {
result = ds.readUTF();
}
} catch (Exception e) {
System.out.print("error");
}
return result;
}
我假设这是一个android防火墙错误,但我不知道如何修复它。提前感谢。- 这不是安卓防火墙错误李>
- 您的代码以一种荒谬的方式混合了客户机和服务器逻辑
- 服务器(Android)应该
和listen()
accept()
- 客户端(Python)应该
。它不应该connect()
listen()
listen()
-ed