Ich versuche, Daten von meinem Android-Handy an einen Java-Server zu senden. Ich habe die Server-Anwendung gemacht und einen Client direkt daraus simuliert, indem ich einen "ClientConnexion" -Thread gestartet habe. Es funktioniert gut, die Daten kommen und ich kann es lesen.Senden von Daten von Android Handy an Java-Server
Dann kopiere ich ma "ClientConnexion" -Klasse auf mein Android-Handy, wie es.
Beim Debuggen auf meinem Server, sehe ich, dass die Verbindung korrekt hergestellt ist, aber die Lesefunktion blockiert, als ob Daten nie eingehend wären. Debugging auf Android-Seite zeigt jedoch, dass es (scheint) gesendet wird.
Hier ist mein ClientConnexion Code:
import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Random;
public class Client implements Runnable{
private Socket connexion = null;
private PrintWriter writer = null;
private BufferedInputStream reader = null;
public Client(String host, int port){
try {
connexion = new Socket(host, port);
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public void run(){
try {
writer = new PrintWriter(connexion.getOutputStream(), true);
reader = new BufferedInputStream(connexion.getInputStream());
// COMMAND is received by server when emulating client directly from it
// COMMAND is NOT received when sent from Android mobile
writer.write("COMMAND");
writer.flush();
System.out.println("COMMAND sent");
String response = read();
System.out.println("Response : " + response);
}
catch (IOException e1) {
e1.printStackTrace();
}
writer.write("CLOSE");
writer.flush();
writer.close();
}
private String read() throws IOException{
String response = "";
int stream;
byte[] b = new byte[4096];
stream = reader.read(b);
response = new String(b, 0, stream);
return response;
}
}
Was auf der Android Client-Seite blockieren könnte? Es wird keine Ausnahme ausgelöst.
Bitte zeigen Sie, was der Server versucht zu lesen. – greenapps