Android 기술 Q&A 
Q&A 게시판에 질문을 남기신 글에 대한 답변/덧글/쪽글에 대한 Push 메일 서비스를 받고자 하시는 분들은
☞ Push 메일 서비스 공지를 필독하시기 바랍니다.
Handler
작성자
작성일 2011-10-04 (화) 14:37
분 류 질문
ㆍ추천: 0  ㆍ조회: 4154      
IP: 210.xxx.89
서비스에서 메시지 받는 부분이 android.os.Handler.handleMessage() 에 구현되어 있습니다.
 
평소에는 이쪽으로 메시지가 잘 전달되는데, 메인 UI Thread에서 Thread.sleep() 을 하거나 lock.wait() 을 하면 메시지가 전달 안 됩니다. 그러다가 sleep이나 wait 이 깨어나면 그제서야 메시지가 옵니다.
반면 Modal dialog 을 만들어서 사용자 Input을 기다리게 만들면 정상적으로 메시지가 옵니다.
 
질문 : 평상시에는 아무것도 안하고 가만 있다가 서비스로부터 메시지가 오면 화면을 업데이트 하는 프로그램인데요. 메시지를 받으려면 위와 같은 이유로 억지로 팝업을 띄워야만 합니다. sleep이나 wait 과 같이 사용자를 귀찮게 하지 않고 메시지를 전달 받으려면 어떻게 해야 할까요?
이름아이콘 들풀
2011-10-04 18:15
질문을 두가지 차원에서 해석해야 할 듯 합니다.
1. 먼저, 안드로이드 애플리케이션 개발시 가장 주의해야 할 것은,
   UI Thread를 blocking해서는 안된다는 것입니다.
   왜 Thread.sleep를 사용했는지는 모르지만 이 부분은 코드를 재구성하는 게 좋을 듯 합니다.
2. 더불어 서비스에서 메시지를 받아서 화면(Activity의 화면)을 업데이트하고자 한다면,
  Acivity에서 해당 서비스에 bindService를 하신후, callback를 서비스에 등록하신후,
  서비스가 activty를 역으로 호출하는 구조가 가장 적당한 구조일 것입니다.
   
 
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.
    N     분류     제목    글쓴이 작성일 조회
5003 질문 앱에 sl4a 를 내장하는 방법 문의 2018-04-23 2149
5002 질문 액션캠( SJ4000 ) 연동 질문 2018-01-25 2557
5001 질문 얼굴(눈) 인식 라이브러리 문의 드립니다. 2017-07-26 3062
5000 질문 후행섹션에서는 컨텐츠가 허용되지 않습니다라는 오류.. 2017-07-04 3101
4999 gralloc 로그 출력 2014-10-16 3605
4998 질문 Android 버전에 따라 onActivityResult을 호출하는 순서가 다.. 2017-09-15 3634
4997 질문 녹음기능중 녹음종료에 대한 문의... 2010-10-05 3636
4996 질문 절판 된 안드로이드 개발서(안드로이드 미디어 프레임워크, 아.. 2017-06-10 3644
4995 질문 비트맵 화면 하단 기준으로 그리기 2015-01-01 3715
4994 질문 객체 내 객체가 있을 때 상위객체(?) 인스턴스 내 변수를 하위.. 2015-02-25 3746
4993 질문 kernel 블루투스 SCO 질문드립니다 2017-03-29 3754
4992 질문 설명이힘드네요.. 안드로이드 질문있습니다 2014-09-14 3765
4991 질문 공유기 사용시 로컬 공인 IP 주소 얻는 방법 2017-07-07 3766
4990 질문 터치 이벤트 자체를 받을수 있게할수있을까요?.. 2015-02-13 3807
4989 질문 JNI에 대한 질문입니다. 2014-07-15 3852
4988 질문 안드로이드 서비스 관련 질문입니다. 2015-01-05 3882
4987 안드로이드 플랫폼 빌드시 2015-01-13 3889
4986 질문 이미지뷰 확대 축소후에 선 그리기 2017-04-13 3935
4985 질문 안드로이드 기본 설정에서 app을 지울때 2014-11-28 3989
4984 질문 어플관련 질문입니다. 꼭 답변 부탁드립니다. 2011-10-30 4001
4983 질문 컴파일시 컴파일 순서 2015-01-06 4007
4982 버튼이벤트가 먹지 않아요... 2014-07-29 4012
4981 크래시문제 질문입니다 2014-08-13 4016
4980 질문 browser에 대해 질문이요..답변좀 부탁드립니다 2011-12-06 4042
4979 효성 cdn 에 이미지 올려보신분 계세요... 2014-12-04 4043
4978 쉘 스크립트 질문 하나 드리겠습니다. 2014-07-31 4057
4977 질문 안드로이드 빌드시 gapps 포함방법 2015-02-05 4057
4976 질문 ScreenCast에 이벤트제어에 대해서 알고 싶습니다... 2011-10-23 4060
4975 질문 Resource$NotfoundException 이 나는데요 2015-03-23 4069
4974 CTS Fail 수정 노하우좀 부탁 드립니다. 2014-05-15 4098
4973 permission 관련 질문 2012-01-19 4108
4972 CTS fial 원인과 해결방안 2014-12-30 4114
4971 질문 액티비티를 finish 하는것 질문 2011-12-06 4122
4970 컨퍼런스 커리큘럼 질문 사항 2011-10-21 4124
4969 질문 List<Size> sizes = parameters.getSupportedPreviewSiz.. 2015-03-24 4131
4968 질문 Email 네이티브 소스 문의사항 2012-02-29 4137
4967 독립적인 Widget 업데이트 2011-11-18 4139
4966 질문 홈스크린 digital clock 소스 구할 수 있는데 없을까요ㅠ_ㅠ.. 2011-12-01 4139
4965 궁금한게 있습니다. NDK에서 ... 2012-02-15 4140
4964 질문 ListView 를 분석하고 싶습니다. 2011-09-29 4142
4963 질문 JAVA 질문입니다. (synchronized) 2011-08-30 4143
4962 질문 웹서버 좀비 connection 2012-02-08 4143
4961 질문 허니콤 버젼 컴파일에대해 질문좀 드립니다 2011-11-01 4145
4960 질문 입력기 관련 질문입니다. 2011-09-23 4150
4959 질문 vmware, ubuntu 질문입니다. 2012-02-08 4150
4958 byte[] to bundle로 변환?? 2011-10-15 4151
4957 질문 eclipse 없이 jar 파일 생성하는 다른 방법이 없을까요?.. 2015-01-21 4151
4956 질문 db파일만 네트워크를 통해서 업데이트를 받으려고 합니다.. 2012-01-17 4152
4955 질문 안드로이드 계정관련 질문드립니다. 2012-03-01 4152
4954 질문 Handler 2011-10-04 4154
12345678910,,,101