본문 바로가기 메뉴 바로가기

코모스튜디오

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

코모스튜디오

검색하기 폼
  • 분류 전체보기 (298)
    • 코모 어플리케이션즈 (68)
      • 말하는 알람 시계 (42)
      • 말하는 타이머 스톱워치 (1)
      • 말하는 일상 카운터 (3)
      • 말하는 시계 (13)
      • SpeakingAlarmClock (0)
      • 번갯불 (2)
      • 빠른 손전등 (2)
      • 일정 브리핑 알람 (2)
    • [안드로이드 공부] (187)
      • 선플라워 디비보기 (6)
      • 코틀린 (7)
      • JetPack (1)
      • 안드로이드 스튜디오 (34)
      • 프리퍼런스 (11)
      • 안드로이드 공부 (30)
      • 프래그먼트 (7)
      • 동기화 (12)
      • 액티비티 (8)
      • UI (47)
      • 미디어 (2)
      • 알림 (8)
      • 서비스 (3)
      • 애드 (9)
      • 테스트 (1)
    • [애플] (0)
    • [IT 뉴스] (18)
      • 모바일 (10)
      • 과학 (5)
      • 인터넷 (3)
    • 식물 (18)
    • [엔터테이먼트] (2)
      • 영화 (2)
    • 기타 (2)
  • 방명록

[안드로이드 공부]/동기화 (12)
스레드, 타이머, 핸들러 그리고 루퍼

일정, 특정 시간 후에 어떤 작업을 해야 할 경우 아래와 같이 타이머를 쓸 수 있다. 하지만 이렇게 사용할 경우 TimerTask is scheduled already 에러를 만나 앱을 죽일 수 있다. public void stopTimer() { mTask = new TimerTask() { @Override public void run() { mTimer = new Timer(); ....... }; mTimer = new Timer(); if(mTimer != null) { mTimer.schedule(mTask, 10000); ....} 이 경우에는 아래와 같은 방법으로 에러를 피할 수 있다. public StropTimerTask stopTimerTask; public void reSchedul..

[안드로이드 공부]/동기화 2015. 8. 30. 15:24
스레드(Thread) 대신 AsyncTask(비동기 태스크)를 쓰자!

UI 가 있는 곳에서 스레드 작업을 조금 길게 하면 화면에 버벅거리면서 아예 멈추는 경우도 발생한다. 하지만 스레드 대신 AsyncTask를 사용하면 이런 현상을 말끔히 해결해준다. class MainForReadyInitAsyncTask extends AsyncTask { @Override protected void onPostExecute(Void result) { // 작업이 완료 된 후 할일 super.onPostExecute(result); } @Override protected void onPreExecute() { // 작업을 시작하기 전 할일 super.onPreExecute(); } @Override protected Void doInBackground(Void... params) { /..

[안드로이드 공부]/동기화 2015. 8. 29. 14:15
이전 1 2 다음
이전 다음
공지사항

Blog is powered by Tistory / Designed by Tistory

티스토리툴바