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

핸들러를 이용한 타이머 구현

0 추천

안녕하세요 안드로이드펍 가족님들.

 

핸들러를 이용해서 타이머를 구현하려고합니다.

아래에 보시면 빨간색부분이 입력받은 시간입니다 1초면 1초 2초며 2초 0.1초면 0.1 그런데 문제가

정수의 값을 받을때는 이상없이 15초면 15초 딜레이후 앱이 실행대는데요 0.1초나 소수점으로 내려갈수록  디바이스마다 

딜레이가 다달라지는거 같습니다. 왜그런건지 아시는분 혹시 있으신가요?

 

예를 들어 0.1초를 빨간색에 넣었을대 40번 호출하게되면 4초가 걸려야하는데 10초가 훨 넘어버립니다.

 

int time = (int) (Double.parseDouble(bufData.detail_ad_time) * 1000);

handler.sendEmptyMessageDelayed(_playCnt,

time);

흠바바 1 (4,000 포인트) 님이 2014년 9월 10일 질문
흠바바 1님이 2014년 9월 10일 수정

1개의 답변

0 추천
 
채택된 답변

스레드로 돌린후에

 

스레드 루핑 함수 들어오자마자

차이 = 현재시간-이전시간

계산하여 0.1초 차이면 바로 이전시간에 현재시간 넣은후에  여러가지 처리 하시고  다시 루핑 돌면 될거에요

원래 타이머가 타이머만 도는게 아니라 여러가지 일을 하기 때문에 정확히 계산이 안되요

 

만드시는데 문제가 있으면 만들어드릴수도 있습니다

 

 

doridori2013@nate.com  메일 또는 네이트온

 

익명사용자 님이 2014년 9월 10일 답변
흠바바 1님이 2014년 9월 10일 채택됨
...