簡體   English   中英

Android TCP客戶端不正確

[英]Android TCP Client Incorrect

“我有一個運行的簡單客戶端,它連接到我的服務器;但是,連接后,我無法接收到任何數據。我猜測需要將一些內容放入while循環中,以便線程不會結束,但是我不知道該放置什么有人可以幫幫我還是給我一個提示?

  Thread background=new Thread(new Runnable() {
            public void run() {

                 try {
                      socket = new Socket("255.255.255.255", 9999);
                      dataOutputStream = new DataOutputStream(socket.getOutputStream());
                      dataInputStream = new DataInputStream(socket.getInputStream());
                      dataOutputStream.writeUTF("Send this text to the server");
                      Log.i("Appname", dataInputStream.readUTF());

                     } catch (someexceptionhere) {

                     }

            } 
   });

如果未將流設置為自動刷新,請確保刷新它們。

Thread background=new Thread(new Runnable() {
  public void run() {
    try {
      socket = new Socket("255.255.255.255", 9999);
      dataOutputStream = new DataOutputStream(socket.getOutputStream());
      dataInputStream = new DataInputStream(socket.getInputStream());
      dataOutputStream.writeUTF("Send this text to the server");
      dataOutputStream.flush();
      Log.i("Appname", dataInputStream.readUTF());
    } catch (Exception _) {}
} 

我報廢了接收方式,正在使用:

socket.getInputStream().read(incomingdata);

似乎現在可以工作了

當線程的run()方法返回或清除所有指向它的指針時,該線程將被殺死。 您應該使用while循環來保持代碼運行,但是請確保在循環中使用Thread.sleep()來防止線程使設備過載。 10ms或更長的時間應該可以工作,但不要將其設置為您所需的時間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM