안드로이드(클라이언트)와 pc(서버)간 tcp 소켓통신을 구현중인데

서버에서 
 Socket socket = ss.accept();  

   System.out.println(new Date().toString() + ":" + socket.toString());  

   BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream(),"UTF-8"));  

   BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(),"UTF-8")); 

   
  while(true){ 

   a = br.readLine();  

   System.out.println("a:" + a); 
    
    
   if(a == null){   
     
    continue; 

   } else if (a.equals("select_addr1")){   

    b = br.readLine();       

 

이런식으로 클라이언트의 메세지를 받습니다.

처음한번만 접속한후에는 계속 메세지만을 받도록 구현하려하는데

안드로이드에서 메세지를 한번이라도 수신한후에는 자꾸 null값을 연속해서 수신합니다.

거의 초당 두세번씩 말이죠

자꾸 저런 현상이 발생하니

socket 을 개설하고 닫아주는 부분을 while문안에 넣는방법밖에는 다른대안이 떠오르지않습니다.

어떡해야 안드로이드에서 널값을 수신하는것을 멈출수있을까요 /.