마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

인스턴트메시징 예제를 안드로이드에 그대로 써봣는데요

0 추천
  public void run()
    {

        try
        {
            DataInputStream inputFromClient = new DataInputStream(socket.getInputStream()); 
            DataOutputStream outputToClient = new DataOutputStream(socket.getOutputStream());


                while(true)
            {

                 final String message = inputFromClient.readUTF();
                 final String s = inputFromClient.readUTF(); 

                 jta.append(s + " - " + message + '\n');
                 
                 outputToClient.writeUTF(message);


            }
        }
        catch(IOException ex)
        {
            System.err.println(ex); 
        }
    }

음...지금 이 소스는

클라이언트와 서버간 1대1 상태에요 그러니까..

A에서 서버로보내는 메시지를 서버에서받구 서버에서 보내는걸 A가받구요

B에서 서버로보낸 메시지를 서버에서 받고 서버에서보낸걸 B가 받는데

저는 A가보낸걸 서버가받고 A,B가 동시에 서버에게서 메시지를 받게하고싶은데 어떻게해야될지 모르겠어요.

서버 소스인데 저부분에서 outputToClient.writeUTF(message);이걸 뭘 어떻게 꼬으면 가능할까요 ?

A가보낸 메시지를 B가받을수있는방법이 뭐일까요

엘희 (500 포인트) 님이 2014년 3월 20일 질문
엘희님이 2014년 3월 20일 태그 변경

1개의 답변

0 추천
 
채택된 답변
동시에 보내려고 하니까 안풀릴겁니다.

같은 메시지를 보낸다로 생각해보세요

A가 연결되면 A에게 보내고 B가 연결 되었을 때 B에게 보내는것이죠

 

꼭 반드시 동시에 보내야 한다면 GCM을 이용하는 방법도 있습니다.

http://developer.android.com/google/gcm/index.html
q1212 (26,020 포인트) 님이 2014년 3월 21일 답변
엘희님이 2014년 3월 24일 채택됨
아 그러면 A가 B에게 보내려면 서버에서가지고있다가 B가연결되었을때보내는건가요?
네 그게 기본동작이라고 할수있죠
아아 ~네 감사합니다 ! 더 공부를 해봐야겠네요 !
...