Return to Video

08-02 Sunshine in the Background

  • 0:00 - 0:04
    레슨 2에서 캐서린이 AsyncTask를
  • 0:04 - 0:08
    리프레시 버튼과 연결시켜서
    데이터를 업데이트했었죠?
  • 0:08 - 0:11
    레이토는 그게
    좋은 방법이 아니라고 했습니다.
  • 0:11 - 0:15
    AsyncTask는 activity life cycle과
    연결돼 있지 않기 때문입니다.
  • 0:15 - 0:19
    가상 기계는 AsyncTask가
    실행되는 이상
  • 0:19 - 0:23
    Android에서
    onDestroy의 명령을 내렸더라도
  • 0:23 - 0:26
    activity object를 버리지 않습니다.
  • 0:26 - 0:30
    폰을 회전시키면,
    activity를 종료시키고
  • 0:30 - 0:32
    새로운 인스턴스를 생성합니다.
  • 0:32 - 0:34
    하지만 어리숙한 AsyncTask 실행으로
  • 0:34 - 0:39
    같은 업데이트를 수행하려는
    두 개의 스레드를 갖게 됩니다.
  • 0:39 - 0:41
    요점은, 웹서비스로부터
    페칭하는 것과 같이
  • 0:41 - 0:46
    길어질 수 있는 백그라운드 작업에는
    최선의 방침은 아니라는 것이죠.
  • 0:46 - 0:48
    앱에서 나가면 AsyncTask는
  • 0:48 - 0:51
    프로세스가 끝나지 않는 이상
    계속 작동되지만,
  • 0:51 - 0:54
    낮은 우선순위에 놓이게 되고,
    기기에서
  • 0:54 - 0:57
    리소스가 더 필요할 경우
    프로세스가 가장 먼저 종료됩니다.
  • 0:57 - 0:59
    더 큰 문제도 있습니다.
  • 0:59 - 1:02
    앱이 전경에서 작동중이어야만
  • 1:02 - 1:05
    task를 생성할 수 있다는 거죠.
  • 1:05 - 1:06
    Task를 시작했기 때문에,
  • 1:06 - 1:09
    앱을 시작한 후 날씨를 업데이트하려면,
  • 1:09 - 1:13
    날씨가 급격히 바뀌는 경우,
    원하지 않는 결과가 나올 수 있습니다.
  • 1:13 - 1:16
    그래서 업데이트를 실행하는
    올바른 방법을 배워 보겠습니다.
  • 1:16 - 1:20
    앱이 전경에 있는 동안
    이 과정을 자동화시키면 좋을텐데요.
  • 1:20 - 1:23
    더 중요한 건, 최소한의 배터리 소모로
  • 1:23 - 1:26
    이 앱이 백그라운드에서
    주기적 업데이트를 받는 것입니다.
  • 1:26 - 1:31
    이것은 추후에 날씨 알림 기능을
    소개할 때 특히 중요할 것입니다.
Title:
08-02 Sunshine in the Background
Description:

more » « less
Video Language:
English
Team:
Udacity
Project:
UD853 - Developing Android Apps
Duration:
01:32

Korean subtitles

Revisions Compare revisions