https://developer.android.com/guide/components/fundamentals#Components

 

요약

  • 액티비티는 화면이 있는 사용자와 상호작용하는 진입점(entry point).
  • 액티비티는 서로 협동하여 하나의 을 만들지만, 서로 남이나 다를바 없는 독립적인 존재들.
  • 시스템과 앱간의 유용한 상호작용을 하는데 액티비티가 하는 역할.
    • 앱 프로세스 종료 우선순위를 정하는데 사용
    • 백그라운드 앱을 실행 가능한 상태로 만드는데 사용
    • 종료된 앱의 이전 상태를 복원하는데 사용
    • 사용자 흐름을 위한 앱들간의 상호작용을 시스템이 지원

 

본문

 

액티비티는 사용자와 상호작용하는 진입점이다.

 

UI가 있는 하나의 화면을 제공한다.

 

예를 들어 이메일 앱에는

     새로운 이메일 리스트를 보여주는 액티비티

     , 에메일을 작성하는 액티비티

     , 이메일을 내용을 보는 액티비티

가 있을 수 있다.

 

 

훌륭한(cohisive: 결속, 응집) 사용자 경험을 위해서 이 액티비티들은 협동할 뿐,

각 액티비티는 남이나 다를바 없는 독립적인 존재들이다.

 

앱에서 설정을 해놓는다면, 어떠한 액티비티라도 먼저 실행 될 수 있다.

(일반 프로그램에서는 보통 고정적인 실행 순서가 있는 반면 다양하게 실행 순서를 설정 할 수 있는 안드로이드 시스템의 특징이다. )

 

예를들어

카메라 앱에서 사진을 찍은 후 곧바로 공유를 눌러 이메일 작성화면으로 앱을 시작 할 수 있다.

 

 

액티비티가

시스템과 앱 사이에 유용한 상호작용 하게 하는데

하는 역할.

  • 시스템은 메모리 부족 등의 이유로 앱을 종료 시킬 수 있는데
    액티비티의 사용기록을 이용하여 프로세스 종료 우선순위를 정해는데 이용한다.

  •  보통 스마트폰은 다양한 앱들이 실행중이다.
    액티비티 사용기록을 이용하여 백그라운드에 있는 앱들을 실행 가능한 상태로 만든다. 

  • 백그라운드에 있는앱이 시스템에 의해 종료가 된 상태에서
    사용자가 다시 앱을 들어갔을 때
    이전 상태가 복원된 액티비티로 돌아 갈 수 있도록 처리하도록 돕는다.
    (시스템이 앱을 위해 종료된 액티비티를 이전 상태로 되돌릴 수 있도록 도와줌.)

  • 앱들이 서로 간에 사용자 흐름(user flow)을 구현 할 수 있는 방법을 제공. 시스템은 이 흐름들을 제어함.
    예를들면 사진을 찍고 -> 공유버튼을 눌러 -> 이메일 작성 하는것이 하나의 사용자 흐름처럼 보이지만,
    실제로는 카메라, 이메일 2개의 앱들이 서로 상호작용하며 자연스러운 흐름을 만들어 냄.

 

 

 

 

 

 

 

 

Activity를 구현할때는 Activity 상속해서 구현해야 함.

+ Recent posts