Activity란 무엇인가?

IT(Old)/Android 2007. 11. 21. 18:34
android 홈페이지(http://code.google.com/android)에 들어가보면
Activity에 대한 정의가 수없이 나온다.(물론 다른것도 마찬가지겠지만...)

일단 Activity란 무엇인가?

activity는 보통 당신이 만든 application의 하나의 screen이다. 다시 정리하자면
핸드폰에 보이는 하나의 화면 하나하나의 단위라 보면 된다.

수정 20071210(월)
android 홈피에 나온 정의를 보면
activity는 기본적으로 라이프 사이클을 가지고 있는 객체이다. Activity는 어떤작업을 하는 큰덩어리의 코드이다.
필요하다면..그 작업은 사용자에게 UI를 표시하는 것도 포함할 수 있다. 하지만 하지 말아야 한다. 몇몇 Activities는 UIs를 결코 표시하지 않는다. 일반적으로, 너는 너의 app의 시작점으로써 당신의 App의 activities들중에 하나를 설계할 것이다.... (으흠....UI그리는 것을...xml에서 하란건가? ㅡ.ㅡ)

예를 들자면...
핸드폰을 짠~ 열었을때 나오는 초기 배경화면도 하나의 activity
문자메시지를 보내는 화면 하나도 activity다..

물론 activity에 여러 view, service등이 붙게되어 하나의 화면을 완성하게 되겠지만
일단 이정도로 이해하는 것이 좋겠다. 뒤에는 용어도 생소한 Bundle, Intent등이 대기중이다 ㄷㄷㄷㄷ

개발할 때 가장 기본이 되는 activity의 life사이클에 대한 정확한 이해를 가져야 나중에 편해질 것이다.

life cycle은 크게 4개의 상태로 나눠질 수 있는데
이것만은 확실히 이해 했으면 좋겠다.

1. active or running : activity가 screen 정면에서 사용중일 때,
2. paused : 여전히 화면에는 보이지만 포커스를 잃었거나 full size로 표시되지 않을 때
3. stopped : 다른 activity에 의해서 화면에서 완전히 사라졌을 때
4. killed :  activity가 완전히 메모리에서 제거되거나, 프로세스가 죽을 때
State diagram for an Android Activity Lifecycle.

끝.