안드로이드 개발 질문/답변
(글 수 45,052)
한 디바이스에 안드로이드 1:1 소켓 통신 앱을 만들고 있습니다.
2개의 앱을 만들어서 한 쪽이 서버가 되고 한 쪽이 클라이언트가 되서 채팅을 할 수 있게끔 만들려고 합니다.
PC 서버 대 Android 클라이언트 를 이용한 예제를 가지고 조금 변경해서 안드로이드에 서버를 구현하는 것 까지는 성공했습니다.
클라이언트 앱에서 텍스트를 전송하면 서버 앱에서 Log를 찍어보니 받아오는 것도 확인했구요.
이제 받아온 것을 출력하려고 하는데.
PC에서는 run()메소드 안에 while문에 System.out.println으로 찍는 형식이여서
그 부분에 TextView.setText()로 뿌리려고 하니 NullPointException이 납니다..
이거 왜 그런건가요.. 굉장히 초보적인 질문일 수도 있는데...
이거 해결하기 위해선 어떻게 뿌려줘야 할까요.
고수님들 많은 도움 부탁드리겠습니다.
2012.01.26 16:31:00
답변 감사합니다.
변수 선언을 Static으로 해주니까 되네요!
변수 소문자도 명심하겠습니다.
근데 한번 텍스트를 뿌리고 난 후에, 또 뿌려지면 원래 있던 것이 없어져버리는데 계속 남아있게 하려면 어떤 방법이 있을까요.




Chatting.setText(...);
요 라인이 문제이신 건가요?
그렇다면.. Chatting 변수에 new로 메모리 할당을 했는지 확인해 보세요 ㅎㅎㅎㅎ
그리고 JAVA에서 변수는 소문자로 시작하도록 해야됩니다.
static 요소를 가진 class와 헤깔릴 수 있기 때문에 가독성면에서 문제가 많지요.