[Proramming]/Android2011. 10. 2. 20:00

[Android] TCP/IP 프로그램 테스트 - 에뮬레이터 이용

[Android] TCP/IP 프로그램 테스트 - 에뮬레이터 이용

android의 WIFI 기능을 이용하면 네트웍으로 연결된 장치들을 쉽게 제어 가능하므로 안드로이드 측에서 TCP 소켓 통신 테스트를 해 두면 여러모로 쓰일곳이 많을 것 같다.


 

 Androd TCP/IP 테스트 프로그램소스코드

AndroidTCP.zip

 


TCP 접속 처리 함수
서버 IP는 PC의 IP를 입력하면 된다.

         InetAddress serverAddr = InetAddress.getByName(serverIP); 

         try
         {
                  socket = new Socket(serverAddr, serverPort);
                   
                   ctlText1.setText("성공");
          }
          catch (Exception e)
         {
                 ctlText1.setText("실패");    
          } 


TCP전송 처리 함수
             EditText message_box;
             message_box = (EditText) findViewById(R.id.editText3)

          try
          {
             PrintWriter out = new PrintWriter(new BufferedWriter(
              new OutputStreamWriter(socket.getOutputStream())), true);
             
             out.println(message_box.getText().toString());
          }
          catch (Exception e)
          {
             ctlText1.setText("Error:" + e);    
          }


데이처 수신 처리 함수
             try
             {
              BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
              if(in != null)
              {
               DataInBuffer = in.readLine();
               tv.setText(DataInBuffer);
              }
             } catch(Exception e)
             {
              ctlText1.setText("Error:" + e);    
             }



주의사항
TCP테스틀 하기 위해서는 manifast 파일에 Uses Permission 설정을 해 주어야 한다. 설저 하지 않으면 TCP접속시 에러가 발생한다.




Android TCP 테스트
우선 가상 장치에서 TCP Client모드로 서버에 접속하는 예제 이므로, PC쪽에 서버가 필요하다.
서버 프로그램은  예전에 작성했던 TCP Server/Client Host Program(VC++) 예제 프로그램으로 테스트 한다.
  EthernetHost.exe

에뮬레이터에서 접속하면 이벤트 보내주고 데이터를 송수신 할 수 있다.




android TCP  소켓 테스트 예제 


Posted by nexp

댓글을 달아 주세요

  1. 통신

    관리자의 승인을 기다리고 있는 댓글입니다

    2013.03.06 17:02 [ ADDR : EDIT/ DEL : REPLY ]