Android 기초 Android

Activity: 가장 메인이 되는 컴포넌트. (하나의 화면 인터페이스)
Service: 백그라운드에서 도는 컴포넌트로 UI가 없다. (음악)
BoardCastReceiver: 이벤트 처리. 안드로이드의 intent를 받아 처리.
ContentsProvider: DB추상화 개념. 저장, 다른 앱간에 공유.

Back Stack
안드로이드는 하나의 앱에서 돌아가야하기 때문에 내부적 화면이 전환되더라도 기존의 화면을 없애는 것이 아니라
메모리에 저장해놨다 돌아갈 때 띄워주는 구조다.
각각의 화면이 Activity이기 때문에 화면이 전환될때마다 그 Activity를 BackStack안에 저장한다. (FILO)

Task
Task는 하나의 Back Stack.
여러 애플리케이션을 수행할 때마다 각 activity가 불러진다. 고로 현재 실행중인 Activity Stack는 Task라는 곳에 저장하게 된다.


Activity의 라이프 사이클


  • OnCreate : 맨 처음 랩이 처음 실행되었을때, 실행되는 메서드로 UI 컴포넌트등을 로딩하고, Listner를 바인딩하고, 초기 데이타를 로딩하는 등의 초기화 작업을 수행한다.
  • OnStart : UI가 화면에 보이기 전에 바로 호출된다. UI가 로딩 된다고 해도, 사용자로 부터 Input을 받을 수 는 없다
  • OnResume : UI 로딩이 끝난후, 사용자 Input (Interaction)이 시작되기 전에 호출된다. 이 함수들이 다 호출되고 나면, 애플리케이션은 실행 가능 상태인 “Activity Running” 상태가 되며, UI도 모두 로딩되고, 사용자로 부터 입력을 받을 준비도 끝난다.
  • OnPause : 이 상태에서 만약에 다른 Activity 화면이 올 경우, OnPause가 호출된다.
    정확한 상태 정의는 “보이기는 하지만 사용자가 Interaction을 할 수 없는 상태” 정도로 정의할 수 있다. 이런 상태가 어떤 상태인가 하면, 다이얼로그등과 같은 다른 액티버티가 앞에 떠서 사용자 Interaction을 수행하는 상태이다 그러나 기존의 Activity는 그대로 뒤에 떠 있지만, 뒤에 떠 있는 activity 는 사용자 Interaction을 받지 못하는 상태이다.
  - 화면이 보이지 않는 상태에서 만약에 메모리가 부족하게 되면 안드로이드 시스템에 의해서 이 단계에서 자동으로 정지(Killed) 될 수 있다. Killed 된 상태에서 다시 그 화면으로 돌아가게 되면 다시 onCreate로 돌아가서 앱을 처음부터 다시 시작하게 된다.
  • OnStop : 액티버티가 더이상 사용자에게 보여지지 않을때 호출된다. 
  • OnDestroy : 액티버티가 소멸될때 호출된다. 






덧글

댓글 입력 영역