Android客户端使用Java套接字连接到pc上的服务器

Android客户端使用Java套接字连接到pc上的服务器,java,android,sockets,network-programming,Java,Android,Sockets,Network Programming,我想向桌面电脑上的服务器发送一个简单字符串。以下是我在电脑上的内容: public static void main(String[] args) { System.out.println("Server Started"); Server server = new Server(); server.start(); } public void start(){ try { ServerSocket SRVSOCK = new ServerSocket(333)

我想向桌面电脑上的服务器发送一个简单字符串。以下是我在电脑上的内容:

public static void main(String[] args) {
System.out.println("Server Started");
    Server server = new Server();
    server.start();
}

public void start(){
    try {
    ServerSocket SRVSOCK = new ServerSocket(333);
    Socket SOCK = SRVSOCK.accept();
    InputStreamReader ir = new InputStreamReader(SOCK.getInputStream());
    BufferedReader bf = new BufferedReader(ir);

    String MESSAGE = bf.readLine();
        System.out.println(MESSAGE);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();    
    }
}   
对于我的android平板电脑,我在
onCreate()

我看到你可以创建一个你需要的新线程(否则应用程序界面会冻结),但它仍然不会将文本发送到我的服务器,我已经在我的windows防火墙中添加了传入和传出端口,甚至尝试关闭防火墙,但仍然没有成功

android代码运行在真正的物理平板电脑(Nexus 7 2013)上,而不是模拟器上

这里怎么了

当应用程序打开时,这是我的日志猫中的内容

03-24 13:43:59.695: I/ActivityManager(768): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.hashimo.mcpeworldconverter/.MainActivity bnds=[200,1314]  [400,1590] (has extras)} from uid 10022 on display 0
03-24 13:43:59.780: I/ActivityManager(768): Start proc com.hashimo.mcpeworldconverter for activity com.hashimo.mcpeworldconverter/.MainActivity: pid=6724 uid=10140 gids={50140,    9997, 1028, 1015, 3003} abi=armeabi-v7a
03-24 13:44:00.338: I/ActivityManager(768): Displayed com.hashimo.mcpeworldconverter/.MainActivity: +592ms

您正在声明一个线程,但忘记了。start()它。因此您的代码不会被执行。

您有
Server=newserver()
什么是
Server
?@JonasCz我忘了去掉它(这段代码是不久前我不太了解的代码)“Server-Server=new-Server();Server.start();”只是在同一个类中调用“start()”方法,这里是“public-void-start(){…}”,你确定它真的在调用那个方法吗?放入一些println并检查。客户端代码中的10.0.0.3 IP地址看起来不正确,可以从平板电脑ping服务器吗?LogCat中是否存在任何异常/堆栈跟踪?@JonasCz是的,这是我的计算机ip。。。我发现了一些事情。当我进入平板电脑网络浏览器,输入
10.0.0.3:333
并按enter键时,我电脑上的服务器会显示
GET/HTTP/1.1
。因此,它是可访问和工作。加上应用程序并没有崩溃,或者什么都没做,我想。。。我在我的清单上有
访问WIFI\u状态
互联网
权限,也是一个很好的捕获,我直到现在才看到,但OP说他的代码在普通Java上有效,但在android上无效。。奇怪。非常感谢你,我刚刚开始弄清楚什么是
线程
在哪里以及它们的用途。你是个救生员
03-24 13:43:59.695: I/ActivityManager(768): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.hashimo.mcpeworldconverter/.MainActivity bnds=[200,1314]  [400,1590] (has extras)} from uid 10022 on display 0
03-24 13:43:59.780: I/ActivityManager(768): Start proc com.hashimo.mcpeworldconverter for activity com.hashimo.mcpeworldconverter/.MainActivity: pid=6724 uid=10140 gids={50140,    9997, 1028, 1015, 3003} abi=armeabi-v7a
03-24 13:44:00.338: I/ActivityManager(768): Displayed com.hashimo.mcpeworldconverter/.MainActivity: +592ms