▷ 안드로이드 애플리케이션- 독립적인 다양한 실행 단위를 하나로 묶어서 관리하는 개념이다.
▶ Activity ▶ Service - (background processer) ▶ Broadcast Receiver : 단말기에서 어떠한 사용이 입력됐을때 실행되는 ▶Content Provider
1. Activity
- 현재 보이는 화면을 관리하는 실행 단위 - 애플리케이션을 실행하면 Activity가 실행되고 Activity가 관리하는 화면이 나타나게 된다.
각 메소드들이 언제언제 호출되는지 아는 게 중요하다 !
실제로 running할 때 onStart()와 onStop()은 잘 쓰이지 않습니당.
여러분들은 onCreate(), onResume(), onPause(), onDestroy() 만 잘 사용하시면 됩니다 !!!
EX ) templeRun 게임보면 하다가 갑자기 전화받고 이후 다시 게임 들어가면 3.2.1하고 이어서 시작됨 !
이 과정에서는 onPause() 와 onResume() 메소드가 실행된 것 입니당~
Activity가 실행될 때 : onCreate() -> onStart() -> onResume() -> Activity Running... 화면 회전이 발생했을 때 : onPause() -> onStop() -> onDestroy() -> Activity Dead -> onCreate() -> onStart() -> onResume() -> Activity Running 화면이 안보일 때 : onPause() -> onStop() -> Activity Stop 화면이 다시 보일 때 : onRestart() -> onStart() -> onResume() -> Activity Running Activity가 종료 될 때 : onPause() -> onStop() -> onDestory() -> Activity Dead // Activity 실행시 딱 한번만 동작해야 하는 코드 : init블럭이나 생성자 Activity 실행시 혹은 화면 회전시 동작해야 하는 코드 : onCreate Activity가 일시정지 혹은 정지 했을 때 동작해야 하는 코드 : onPause Activity가 다시 가동되거나 보여질 때 동작해야 하는 코드 : onResume Activity가 완전히 종료될때 동작해야 하는 코드 : onDestroy
EX> onCreate() -Activity가 처음 실행 될 때 -화면 전환이 발생했을 때
onCreate는 무조건 한 번만 실행되는 게 아님! 꽤 많은 어플이 화면전환을 지원하지 않는다. activity하나당 화면을 2개씩 만들어줘야 한다는 거기에,,, ㅠㅠ