안녕하세요~

지금 안드로이드로 채팅 프로그램 을 함 만들어 보려고해요;;지금 이부분만 3일째 ㅠㅠ

다름이아니라 소켓을 사용해서

서버와 클라이언트 입/출력 스트림 으로 주고 받을때 한글 ( 일어 ) 깨지드라구요;;

인터넷으로 찾아봐서 해봤지만 ;;; 다 지지 ;;;

ObjectInputStream in = new ObjectInputStream(client.getInputStream());

ObjectOutputStream out = new ObjectOutputStream(client.getOutputStream());

message=(String) in.readObject();

out.writeObject("Received "+message+"");

이걸로 서버/클라이언트 사용할때는 되드라구요;;

그런데 클라이언트 부분에서 쓰레드를 사용 했거든요.

02-16 04:56:34.129: E/AndroidRuntime(14565): android.view.ViewRoot$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.

오류 입니다 ... 초보라서 잘모르겟서요 ㅠㅠ

그래서 일단은!!


out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(csocket.getOutputStream())), true);

in = new BufferedReader(new InputStreamReader(csocket.getInputStream()));

out.println(MSG);

msgs = in.readLine();


이걸로 사용을 해봤어요 ~ ㅇㅅㅇ ;;; ( 서버랑 클라이언트랑 전부 같음 )

왠걸 ? 한글 or 일어 가 안되네요 ㅠㅠ 영어 밖에 ;; OTL;;

BufferedOutputStream out = new BufferedOutputStream(client.getOutputStream());

BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream(),"utf-8"));

message = in.readLine();

out.write(str.getBytes("utf-8"));

out.flush();

out.close();

이렇게도 해봤는데 ;; 안되더라구요 ;; 이렇게 하면 된다고 하든데 ;; 잘못했는지도 모르겟다는 ;;

아 ~ out.close(); 주석 처리 해서 해봤는데도 안되요 ㅠㅠ

부탁 드립니다!!! 어떻게 해야하나요 !!