- Forum-Beiträge: 86
01.03.2014, 18:09:20 via Website
01.03.2014 18:09:20 via Website
ich habe in meiner App einen Socket Client, der Strings an den Server senden soll. Das klappt beim ersten mal wunderbar, aber wenn er noch was senden soll, dann macht er es einfach nicht.
Hier mal mein Code:
Client starten:
ClientThread:
2
3 @Override
4 public void run() {
5
6 try {
7 InetAddress serverAddr = InetAddress.getByName(SERVER_IP);
8
9 socket = new Socket(serverAddr, SERVERPORT);
10 updateUiHandler.post(canConnectRunnable);
11
12 } catch (UnknownHostException e1) {
13 updateUiHandler.post(cantConnectRunnable);
14 //e1.printStackTrace();
15 } catch (IOException e1) {
16 updateUiHandler.post(cantConnectRunnable);
17 //e1.printStackTrace();
18 }
19
20 }
21
22 }
Meine senden Methode:
2 Log.d("sendToHost", "bevore try");
3 try {
4
5 PrintWriter out = new PrintWriter(new BufferedWriter(
6 new OutputStreamWriter(socket.getOutputStream())),
7 true);
8 out.println(command);
9 Log.d("sendToHost", command);
10 Log.d("sendToHost", "in try");
11 } catch (UnknownHostException e) {
12 Log.d("sendToHost", "unknownhost");
13 e.printStackTrace();
14 } catch (IOException e) {
15 Log.d("sendToHost", "ieexception");
16 e.printStackTrace();
17 } catch (Exception e) {
18 Log.d("sendToHost", "exception");
19 e.printStackTrace();
20 }
21
22 }
Wenn ich das erste mal etwas zum Server sende, kommt es auch an. Wenn ich nun die sendToHost() Methode noch einmal aufrufe, dann durchläuft er das try, was ich im LogCat ja sehe und auch die variable command ist befüllt, aber es kommt nichts am Server an.
Am Server liegt es nicht, der nimmt von anderen Clients auch Daten an.
Hoffe hier kann mir jemand helfen.
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.