참고서적:모두의 안드로이드
*제가 직접 사서 참고하고 있습니다.
개발환경:우분투 20.04 lts
[액티비티의 수명주기]
웹에서 어떤 동작이 일어날 떄의 화면 상태를 액티비티(activity)라고 합니다. 예를 들어 어떤 앱에 로그인을 하고 접속하고 화면이 바뀌는 모든 각각의 화면이 각각 다른 액티비티라고 볼 수 있습니다.
액티비티는 시작되어 종료될 때 까지 그 상태가 변화하는데, 상태가 변할 때마다 어떤 일이 일어나는지를 '수명주기'라고 부릅니다.
안드로이드의 모든 앱은 OnCreare()함수로 시작합니다. 앱을 시작한다는 신호를 보내는 것으로 자동차 시동 거는 것과 비슷하다고 볼 수 있습니다.
그리고 onStart()가 이어 받습니다. 백버튼을 누르거나 다른 화면이 앱을 일부 가린다면 onPause가 되고
다른화면으로 전환할때는 onStop이 됩니다. 이 상태에서 다시 해당 앱으로 돌아가면 onResume상태가 됩니다.
그리고 완전이 꺼지면 onDestroy가 됩니다.
*프로세스는 프로그램을 실행했을 때 메모리에서 작동하는 작업 단위를 의미합니다.
[수명주기 확인해보기]
새로운 프로젝트를 만듭니다.
mainActivity.java파일로 가서 아래처럼 코드를 바꿔줍니다.
package com.example.lifecycle;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;//추가부분
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("gitbut","onCreate");// 추가부분
}
//================================================추가부분
@Override
protected void onResume(){
super.onResume();
Log.i("gitbut","onResume");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.i("gitbut", "onDestroy");
}
}
실행을 시킨후 로그캣 창을 엽니다.
클릭 후
여기에서 verbose라고 적혀있는 칸이 보이는데, 이는 모든 정표시를 의미합니다. 이 옆에 돋보기에 키워드를 입력하면 키워드에 해당하는 상태만 볼수 있습니다. 저희는 gitbut 이름의 키워드만 찾아보겠습니다.(log.i에 태그라 적힌게 키워드)
'오늘의 공부 > android' 카테고리의 다른 글
[모두의 안드로이드]3일차: 스크롤 화면 만들기 (0) | 2020.09.25 |
---|---|
[모두의 안드로이드]3일차:한 화면에서 다른 화면 호출하기 (0) | 2020.09.25 |
[모두의 안드로이드]2일차: 자동 회전 막기 & 페이지 불러오기 (0) | 2020.09.24 |
[모두의 안드로이드]1일차: 상태 표시줄과 앱 바 숨기기 (0) | 2020.09.23 |
[모두의 안드로이드]1일차: 기본 화면 꾸미기 (0) | 2020.09.23 |