안드로이드 생명주기 수명주기
안드로이드 생명 주기란 ?? 수명 주기란??
안녕하세요 블랙디입니다.
위에서 언급드린 것처럼 안드로이드 life cycle에 대해서 알아보겠습니다.
수명주기의 뜻과 일련의 과정
안드로이드에서 수명 주기란 같은 의미의 말로 '생명 주기'라고도 부르며, 영어로는 'android life cycle'이라고 합니다.
일련의 과정을 풀이 해보겠습니다. 시간이 없으신 분들은 밑에 요약 과정을 참고하시기 바랍니다.
사용자가 앱을 실행하면 Android 시스템은 일련의 수명 주기 메서드를 호출합니다. 만약, 사용자가 다른 Activity를 시작하거나 다른 App으로 전환하는 작업을 수행하면, 기존 Activity는 Background 상태(해당상태는 유지됨)로 전환되면서 시스템은 Activity에 또 다른 수명 주기 메서드를 호출합니다.
사용자가 Activity를 떠났다가 다시 돌아왔을 때 어떤 식으로 동작할지에 대해 선언하고 싶다면, 수명 주기 콜백 메서드 내에 선언할 수 있습니다. 예를 들어 동영상 플레이어를 개발하는 경우, 사용자가 다른 앱으로 전환할 때 동영상을 일시 중지하고 네트워크 연결을 종료합니다. 사용자가 다시 돌아오면, 콜백 메서드를 통해서 네트워크를 다시 연결하고 사용자가 일시 중지한 지점에서 동영상을 다시 시작할 수 있게 할 수 있습니다.
위와 같은 과정 안에 수명주기가 담겨 있습니다.
수명주기 메서드
위에서는 수명 주기에 대해 대략적인 느낌만 가져갔다면, 지금부터는 직관적으로 설명드리겠습니다.
사용자가 앱을 최초 실행하면 Created → Started → Resumed 메서드까지 실행됩니다.
Resumed 메서드까지 실행되면 Activity는 우리가 볼 수 있는 전면에 배치되어있으며, 다른 Activity 또는 다른 App으로 작업을 전환 할 수 있습니다.
Paused 메서드는 Activity가 다른 Activity로 인해 부분적으로 가려져 있는 상태입니다. 이런 경우, 전면에 있는 다른 Activity는 반투명이거나 전체화면을 차지하지 않습니다. 일시정지된 Activity는 사용자에게 입력을 받지 않습니다.
Stopped 메서드가 Paused와 동일한점은 사용자에게 입력을 받지않는 비활성화 상태라는 것입니다. Paused와 무슨 차이점이 있냐하면, Paused는 Activity가 부분적으로 가려져 있지만 보이는 상태이고, Stopped는 화면에서 아예 사라진 상태라는 것입니다. 이해 되셨나요~?
Destory는 Activity가 완전히 소멸되었을 때를 지칭합니다. 즉, App이 아예 꺼졌거나 Activity가 background에도 없는 상태겠죠~?
마지막 Tip을 드리고 블랙디는 물러가보겠습니다.
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
앱을 최초 실행할 때 수명주기인 onCreate 진입 지점은 어디에 설정되어있냐? 바로 저 위에있는 intent-filter입니다! Tip이 참고가 되셨나요~?
위의 intent 필터에 대해서 모르시는 분들은 첫번째 포스팅 글을 참고바랍니다.
2018/10/24 - [IT Program/Android Tip] - [안드로이드] AndroidManifest(매니페스트)의 뜻과 역할, 첫페이지를 변경해보자
자! 이렇게 블랙디가 드리는
네번째 Android TIP 이었습니다.
더 궁금한 분들은 댓글로 남겨주시면 답변 드릴게요
'IT Program > Android Tip' 카테고리의 다른 글
[안드로이드] android edittext next focus (0) | 2018.11.02 |
---|---|
[안드로이드] addTextChangedListener TextWatcher (0) | 2018.11.01 |
[안드로이드] 안드로이드 권한 체크, 퍼미션 체크 하기 (0) | 2018.10.26 |
[안드로이드] Gradle(그래들)과 JCenter란 (0) | 2018.10.25 |
[안드로이드] AndroidManifest(매니페스트)의 뜻과 역할, 첫페이지를 변경해보자 (7) | 2018.10.24 |