android delay에 관해 궁금한게 있습니다


제가 짜고 있는 코드 중 외부server로 부터 정보를 받아오는 코드가 있습니다. 받아오는 도중 딜레이가 있어서

new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                checkNickname(connection,token);        //0.5초뒤 실행
            }
        }, 500);

위와 같은 방법으로 딜레이를 주고 있습니다. 그런데 이렇게 특정한 시간 딜레이를 주다보니 서버가 좀 느려지거나 느린 폰에서는 값을 못받아오고 nullpointer로 앱이 죽어버리더라구요. 혹시 이런 특정한 시간 말고 값을 받아오면 함수를 실행할 수 있도록하는 방법이 없을까요? 방법 중 하나로 while문으로 루프 돌려서 실행하는 방법을 생각해봤는데 별로 좋은 방법같진 않더라구요. 여러분들의 좋은 의견 부탁드립니다!

  • 2016년 09월 25일에 작성됨
    안드로이드 개발

조회수 154


1 답변


쉽고 빠르게 적용해볼만한 방법으로 이벤트 버스가 대안 중 하나가 될 수 있습니다. 아래 내용을 확인해보세요.


로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close