Android - Sockets nachricht vom server empfangen

  • Antworten:7
  • OffenNicht stickyNicht beantwortet
  • Forum-Beiträge: 4

10.08.2018, 16:19:10 via Website

hey leute ich bin am verzweifeln - zum server kann ich mich verbinden und an den server auch
nachrichten schicken

EDIT: Stürzt nicht ab sondern empfange keine nachricht vom server

Button btnLogin = (Button) mView.findViewById(R.id.btnLogin);
btnLogin.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {

    if (etUsername.getText().length() >= 3 && etPassword.getText().length() >= 3) { 

    thread = new Thread(new Runnable() 
    {

      @Override
      public void run() 
      {
            try 
            {
                  socket = new Socket("1xx.xxx.xxx.x3", 8797);
                  // Daten an den Server senden
                  oos = new PrintWriter(socket.getOutputStream());
                  oos.write("Test"); 
                  oos.flush();

                  oos.close();

// Hier stürzt die app immer ab
BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String recvMessage = br.readLine();

                  socket.close();


          } 
          catch (Exception e) {

          }
    }

  });
  thread.start();

— geändert am 10.08.2018, 16:41:55

Diskutiere mit!
Pascal P.
  • Mod
  • Blogger
  • Forum-Beiträge: 10.183

10.08.2018, 16:25:02 via App

Hallo He21pnd,

Herzlich willkommen hier im Forum :)

wenn die App abstürzt, muss es eine LogCat Fehlermeldung geben. Kannst du diese mal bitte posten?

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 4

10.08.2018, 16:37:59 via Website

Hey Pascal sorry falsche info, habs grad nochmal getestet um dir den log zu schicken das mit dem abstürtzen hab ich anscheinen schon geregelt.

Hauptproblem aktuell ist empfange einfach keine nachricht vom server Der server sollte mir true oder false zurückgeben bekomme aber nichts rein

Edit: Danke für die nette begrüßung :)

— geändert am 10.08.2018, 16:38:35

Hilfreich?
Diskutiere mit!
Pascal P.
  • Mod
  • Blogger
  • Forum-Beiträge: 10.183

10.08.2018, 16:48:12 via App

Kannst du den Server debuggen und schauen ob der wirklich was sendet?

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 4

10.08.2018, 16:54:23 via Website

imagealso der server sendet 100%

paar details zum server vielleicht ja relevant

Der server ist in C++ geschrieben arbeitet auch mit sockets nimmt den client an und sendet eine nachricht zurück, getestet wurde das mit einem c++ client und da funktioniert das einwandfrei :) image

— geändert am 10.08.2018, 16:55:32

Hilfreich?
Diskutiere mit!
  • Forum-Beiträge: 4

10.08.2018, 17:58:30 via Website

08-10 17:57:55.050 25801-25801/kw.customer D/ViewRootImpl@f4a8111[MainActivity]: ViewPostIme pointer 0
08-10 17:57:55.108 25801-25801/kw.customer D/ViewRootImpl@f4a8111[MainActivity]: ViewPostIme pointer 1
08-10 17:57:55.117 25801-25957/kw.customer D/TcpClient: Sending: 2
08-10 17:57:55.124 25801-25957/kw.customer E/AndroidRuntime: FATAL EXCEPTION: Thread-7
Process: kw.customer, PID: 25801
java.lang.NullPointerException: Attempt to invoke virtual method 'void java.io.PrintWriter.flush()' on a null object reference
at kw.customer.TcpClient$1.run(TcpClient.java:46)
at java.lang.Thread.run(Thread.java:764)
08-10 17:57:55.147 25801-25880/kw.customer E/TCP: S: Error
java.net.SocketException: Socket closed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:114)
at java.net.SocketInputStream.read(SocketInputStream.java:170)
at java.net.SocketInputStream.read(SocketInputStream.java:139)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:288)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:351)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:180)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
at java.io.BufferedReader.fill(BufferedReader.java:172)
at java.io.BufferedReader.readLine(BufferedReader.java:335)
at java.io.BufferedReader.readLine(BufferedReader.java:400)
at kw.customer.TcpClient.run(TcpClient.java:97)
at kw.customer.MainActivity$ConnectTask.doInBackground(MainActivity.java:254)
at kw.customer.MainActivity$ConnectTask.doInBackground(MainActivity.java:240)
at android.os.AsyncTask$2.call(AsyncTask.java:333)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
08-10 17:57:55.175 25801-25801/kw.customer D/ViewRootImpl@f4a8111[MainActivity]: MSG_WINDOW_FOCUS_CHANGED 0
08-10 17:57:55.289 25801-25879/kw.customer D/OpenGLRenderer: eglDestroySurface = 0x7660a18070
08-10 17:57:55.323 25801-25801/kw.customer D/ViewRootImpl@f4a8111[MainActivity]: Relayout returned: old=[0,236][720,1196] new=[0,236][720,1196] result=0x5 surface={valid=false 0} changed=true
08-10 17:57:55.325 25801-25879/kw.customer D/OpenGLRenderer: eglDestroySurface = 0x7660a180c0
08-10 17:57:55.333 25801-25801/kw.customer D/ViewRootImpl@ded8db2[MainActivity]: Relayout returned: old=[0,0][720,1480] new=[0,0][720,1480] result=0x5 surface={valid=false 0} changed=true
08-10 17:57:55.678 25801-25801/kw.customer D/ViewRootImpl@ded8db2[MainActivity]: dispatchDetachedFromWindow
08-10 17:57:55.678 25801-25801/kw.customer D/InputEventReceiver: channel '14e2b2a kw.customer/kw.customer.MainActivity (client)' ~ Disposing input event receiver.
08-10 17:57:55.678 25801-25801/kw.customer D/InputEventReceiver: channel '14e2b2a kw.customer/kw.customer.MainActivity (client)' ~NativeInputEventReceiver.
08-10 17:57:55.688 25801-25801/kw.customer E/WindowManager: android.view.WindowLeaked: Activity kw.customer.MainActivity has leaked window DecorView@9d14077[] that was originally added here
at android.view.ViewRootImpl.(ViewRootImpl.java:610)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:365)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:100)
at android.app.Dialog.show(Dialog.java:420)
at kw.customer.MainActivity.onCreate(MainActivity.java:120)
at android.app.Activity.performCreate(Activity.java:7174)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1220)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2908)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
08-10 17:57:55.733 25801-25801/kw.customer D/ViewRootImpl@f4a8111[MainActivity]: dispatchDetachedFromWindow
08-10 17:57:55.733 25801-25801/kw.customer D/InputEventReceiver: channel '7897b1e kw.customer/kw.customer.MainActivity (client)' ~ Disposing input event receiver.
08-10 17:57:55.734 25801-25801/kw.customer D/InputEventReceiver: channel '7897b1e kw.customer/kw.customer.MainActivity (client)' ~NativeInputEventReceiver.

Hilfreich?
Diskutiere mit!
Pascal P.
  • Mod
  • Blogger
  • Forum-Beiträge: 10.183

10.08.2018, 18:23:40 via App

vlt das oos close weglassen.. schließt im Zweifelsfall das Socket

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Diskutiere mit!

Empfohlene Artikel