Page 303 - MDP2020-1
P. 303

················································································  명장양성프로젝트  【MDP】  과제발표회  자료집  Ⅰ    |  297


                                    @Override
                                    public   void   onCheckedChanged(CompoundButton   buttonView,    boolean
            isChecked)  {
                                            ConnectThread  th  =new  ConnectThread();

                                            th.start();
                                            if(out  !=  null)
                                                    th.stop();
                                    }

                            });
                    }


                    @Override
                    protected  void  onStop()  {
                            super.onStop();

                            try  {
                                    socket.close();                  //종료시  소켓도  닫아주어야한다.
                            }  catch  (IOException  e)  {
                                    e.printStackTrace();

                            }
                    }
                    class  ConnectThread  extends  Thread{                  //소켓통신을  위한  스레드
                            public  void  run(){
                                    try{
                                            //소켓  생성

                                            InetAddress  serverAddr  =  InetAddress.getByName(ip);
                                            socket  =    new  Socket(serverAddr,port);
                                            //입력  메시지

            Toast.makeText(ControlActivity.this,"test",Toast.LENGTH_SHORT).show();

                                            //데이터  전송
                                            if  (sw_fan.isChecked()  ==  true){
                                                    out   =   new   PrintWriter(new     BufferedWriter(new
            OutputStreamWriter(socket.getOutputStream())),true);
                                                    out.print('a');

                                            }  else  {
                                                    out   =   new   PrintWriter(new     BufferedWriter(new
            OutputStreamWriter(socket.getOutputStream())),true);
                                                    out.print('b');
                                            }

                                            //데이터  수신
                                            BufferedReader   input   =      new         BufferedReader(new
   298   299   300   301   302   303   304   305   306   307   308