我试图在python服务器和java客户机(在android中)之间创建一个连接,其思想是只有客户机向服务器发送数据,而服务器将处理事情。但是,问题是,第一次发送消息时,服务器会收到消息;然后,当我尝试发送下一条消息时。服务器没有接收到任何内容。你知道吗
服务器非常简单:这里有一个飞贼:
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind((HOST, PORT))
server_socket.listen(10)
client_socket, client_address = server_socket.accept()
print 'Connect with ' + client_address[0]
while check_if_directx_game():
data = client_socket.recv(1024).decode("UTF-8")
if 'SBA' in data:
PressKey(a)
if "PBA" in data:
ReleaseKey(a)
else:
print data
print "was here"
client_socket.close()
server_socket.close()
客户方:
public class SendMessage extends AsyncTask<String,Void,Void>{
private Exception exception;
@Override
protected Void doInBackground(String... params){
try {
try {
Socket socket = new Socket("192.168.1.178", 9000);
PrintWriter ToServer = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()));
ToServer.print(params[0]);
ToServer.flush();
ToServer.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (Exception e) {
this.exception = e;
return null;
}
return null;
}}
我只收到来自客户的SBA消息,但从来没有收到PBA发送exacly之后。冲水后我关闭了PrintWriter()
注意——当我第一次在服务器上打印数据时,它只打印新行,而不是“was here”字符串
有什么想法吗?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐