안드로이드 개발 질문/답변
(글 수 45,052)
안드로이드 어플에 채팅기능을 구현하려하는데요.
웹상에보면 자바로 된 채팅 서버,클라이언트, 소스는 많이 구할 수 있는데
제가 하고싶은건 방을 만들어서 각 방에서 채팅으로 대화를 하는 부분을 구현하려합니다.
방을 만들고 리스트뷰에 방목록이 뜨게 하고싶은데 대강 어떤식으로 흐름이 이루어지는지 알고싶습니다.
2012.04.19 10:41:21
--호스트 클라이언트--
클라이언트의 세션 생성 요청
서버의 세션 생성
이로서 세션 및 각 세션에 조인한 클라이언트 리스트 는 서버가 관리합니다.
세션 생성 성공을 요청한 클라이언트에 전송.
클라이언트는 다른 클라이언트를 대기
--세션 참가 클라이언트--
세션 리스트 요청
서버는 클라이언트에 리스트 전송
세션 선택, 조인 요청
서버는 세션 정보에 클라이언트를 추가
세션의 클라이언트에 이 사실을 통보.
세션에 참가.
-- 메시지 전송 --
클라이언트가 채팅질.
서버로 전송.
서버는 세션의 클라이언트 목록을 보고 이를 중계.
세션은 스레드가 될 수도있고 단순 리스트 목록이 될수도있습니다.




로그인한 사용자들의 객체에 그냥 방이라는 필드가 있을뿐 똑같습니다.
해당 필드에는 대기실에 있는지 어떤 방에 있는지가 표시되면 되구요..
방에 있는 사람이 말을 하면 해당 방에 소속된 사람들에게 메시지를 뿌려주면 되구요..
그냥...기존 소스를 참고 안하시고 새롭게 구현해 보신뒤 방기능을 추가해보세요.
새로 구현하시다 보면 어느정도 정립이 되실듯..