2011-08-01 33 views
1

我需要通過使用wifi連接的ip地址和端口號來連接我的android應用和機器人。 我有一部分代碼,但我認爲它需要命令來創建連接。android應用通過ip地址和端口號連接到機器人

public void onClick(View arg0) { 
    // TODO Auto-generated method stub 
    Socket socket = null; 
    DataOutputStream dataOutputStream = null; 
    DataInputStream dataInputStream = null; 

    try { 
     socket = new Socket("192.168.10.5", 2525); 
     dataOutputStream = new DataOutputStream(socket.getOutputStream()); 
     dataInputStream = new DataInputStream(socket.getInputStream()); 
     dataOutputStream.writeUTF(textOut.getText().toString()); 
     textIn.setText(dataInputStream.readUTF()); 
    } catch (UnknownHostException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } finally{ 
     if (socket != null){ 
      try { 
       socket.close(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 

     if (dataOutputStream != null){ 
      try { 
       dataOutputStream.close(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 

     if (dataInputStream != null){ 
      try { 
       dataInputStream.close(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 
    } 
}; 

回答

0

寫入後應該在輸出流上調用flush。

另外,在關閉finally塊中的套接字之前關閉流。

究竟是什麼問題? 您是否看過服務器端的日誌以查看連接是否已建立? 你是否看到你的服務器接受連接? 你是否在服務器端重放任何數據?

問候, 斯特凡

+0

感謝斯特凡..當我嘗試運行與設置IP和端口號機器人然後應用程序無法正常工作的客戶端應用程序的問題。 – Bashir

+0

是的,我試過使用以前的方式,但沒有結果。 我的申請首先需要挑選一個接入點網絡進行連接。 – Bashir

+0

我沒有收到你最後的評論。您需要選擇接入點是什麼意思? – Snicolas

相關問題