M
maksimilian
Ambitioniertes Mitglied
- 0
Hallo Ihr,
eine Konfiguration mit TCP-Server (Pi, Python) und Client (Handy-Android, Java) funktioniert gut. Jetzt möchte ich die Kommunikation erweitern. Der Server soll nach Kontaktaufnahme des Clients und Senden einer Nachricht diesem 2x hintereinander antworten. Mit 2x socket.send() vom Server und 2x dataInputStream.readUTF() hintereinander funktioniert es ja offensichtlich nicht. Die beiden Nachrichten, welche der Server an den Client schicken soll, können nicht in einer einzigen Nachricht geschickt werden. Wie muss ich da vorgehen ?
Client:
maksimilian
eine Konfiguration mit TCP-Server (Pi, Python) und Client (Handy-Android, Java) funktioniert gut. Jetzt möchte ich die Kommunikation erweitern. Der Server soll nach Kontaktaufnahme des Clients und Senden einer Nachricht diesem 2x hintereinander antworten. Mit 2x socket.send() vom Server und 2x dataInputStream.readUTF() hintereinander funktioniert es ja offensichtlich nicht. Die beiden Nachrichten, welche der Server an den Client schicken soll, können nicht in einer einzigen Nachricht geschickt werden. Wie muss ich da vorgehen ?
Client:
Code:
public class MyClientTask extends AsyncTask<Void, Void, Void> {
String dstAct;
String response = "";
MyClientTask(int act) {
dstAct = Integer.toString(act);
}
@Override
protected Void doInBackground(Void... arg0) {
Socket socket = null;
DataOutputStream dataOutputStream = null;
DataInputStream dataInputStream = null;
String s;
try {
socket = new Socket("192.168.178.66", 50000);
dataOutputStream = new DataOutputStream(
socket.getOutputStream());
dataInputStream = new DataInputStream(socket.getInputStream());
dataOutputStream.writeUTF(dstAct);
response = dataInputStream.readUTF(); // 1. Nachricht vom Server
// jetzt finden Ereignisse im Server statt,
// deren Ergebnis dem Client gemeldet werden soll:
response = dataInputStream.readUTF(); // 2. Nachricht vom Server,
// so geht's nicht
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
......
maksimilian