首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >简单TCP Listener-适用于Android的线程..我的连接不上

简单TCP Listener-适用于Android的线程..我的连接不上
EN

Stack Overflow用户
提问于 2011-11-28 23:27:11
回答 1查看 7.1K关注 0票数 1

在Android上,我试图实现一个简单的TCP Listener Thread (或者从任何地方复制它)。它应该简单地等待一个文本,然后做一些事情。文本已发送,此部分可以工作,但此侦听器线程甚至不能创建用于正确侦听的套接字。

有没有人有什么想法,是不是错了,或者对我来说是另一个简单的方法?文本是由我自己定义的,而不是html。我只找到了太多太复杂的http处理程序。

代码语言:javascript
复制
import java.lang.*;
import java.io.*;
import java.net.*;

public class Client implements Runnable {



   public static void main(String args[]) {

       System.out.print("Listening Thread started\n");

      try {
         Socket skt = new Socket("localhost", 2999);
         BufferedReader in = new BufferedReader(new
            InputStreamReader(skt.getInputStream()));
         System.out.print("Received string: '");

         while (!in.ready()) {}
         System.out.println(in.readLine()); // Read one line and output it

         System.out.print("'\n");


         in.close();
      }
      catch(Exception e) {
         System.out.print("Whoops! It didn't work!\n");
         System.err.println(e);
      }
   }
   public Client () {

   }
@Override
public void run() {
    // TODO Auto-generated method stub
    main(null);
}

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-28 23:49:54

您显示的代码用于创建客户端套接字,而不是服务器套接字。参见下面的TCP服务器套接字示例,取自SystemBash

代码语言:javascript
复制
class TCPServer
{
   public static void main(String argv[]) throws Exception
      {
         String clientSentence;
         String capitalizedSentence;
         ServerSocket welcomeSocket = new ServerSocket(6789);

         while(true)
         {
            Socket connectionSocket = welcomeSocket.accept();
            BufferedReader inFromClient =
               new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
            DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());
            clientSentence = inFromClient.readLine();
            System.out.println("Received: " + clientSentence);
            capitalizedSentence = clientSentence.toUpperCase() + '\n';
            outToClient.writeBytes(capitalizedSentence);
         }
      }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8298100

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档