2014-10-06 78 views
0

我试图从真正的android设备(客户端)发送一个字符串到电脑(服务器),其中服务器在Netbeans 8.0上运行,设备通过WiFi连接到PC(使用电脑wifi热点connectify)。 Server代码:NetBeans服务器(在PC上)客户端(在Android上)

try { 

      clientSocket = serverSocket.accept(); // accept the client connection 
      inputStreamReader = new InputStreamReader(clientSocket.getInputStream()); 
      bufferedReader = new BufferedReader(inputStreamReader); // get the client message 
      message = bufferedReader.readLine(); 

      System.out.println(message); 
      inputStreamReader.close(); 
      clientSocket.close(); 

     } catch (IOException ex) { 
      System.out.println("Problem in message reading"); 
     } 

和客户端代码:

try{ 
      client = new Socket("192.168.207.1", 4444); 
      printwriter = new PrintWriter(client.getOutputStream(), true); 
      printwriter.write("SENTTTTTTTTT"); 
      printwriter.flush(); 
      printwriter.close(); 
      client.close(); 

    } catch (Exception e) {Toast.makeText(getApplicationContext(), "Exception-->"+e.getMessage(), Toast.LENGTH_SHORT).show();} 

我已经测试(使用PING应用程序)的IP可达。 但是,当我在设备上运行应用程序时,它会给Exception - > null。 但是,当我测试服务器&客户端在PC上作为一个JAVA SE应用程序,它工作正常。 但它不适用于Android设备。

+0

我一直在使用它来发送Android的消息:http://stackoverflow.com/questions/20131316/android-tcp-ip-socket-wont-send-data-to-computer/20131985#20131985 – cYrixmorten 2014-10-06 17:14:59

回答

0

如果网络运行的是Android主线程上执行

确保你没有做在Android上的主线程联网操作将会有一个例外。

这是在一个单独的线程中完全相同。

+0

True ,但这是如何回答这个问题的? – 2014-10-06 17:14:41

+0

如果在Android – 2014-10-06 17:22:00

+0

的主线程上执行网络操作,将会有一个例外,请通过提供完整的示例教程来帮助我。 – Subhadeep 2014-10-06 18:02:40

相关问题