본문 바로가기
Android App/Kotlin

Activity, Context, Intent

by AppJinny 2022. 11. 9.

*Activity, Context, Intent

 

*Activity(액티비티)

-사용자가 직접 보고 입력하는 화면 담당 컴포넌트

-메이저 컴포넌트 중 하나

-컨텍스트(Context)를 상속받아 구현

 

*Context(컨텍스트)

-앱을 실행하기 위한 설계도의 개념, 앱에서 사용하는 기본 기능이 담겨있는 기본클래스

-시스템을 사용하기 위한 정보(프로퍼티)와 도구(메서드)가 담겨있는 클래스

-액티비티, 서비스 등의 컴포넌트와 스피너, 리사이클러뷰와 같은 화면 요소를 사용하기 위해 필요

-컨텍스트를 상속받은 컴포넌트들은 baseContext호출만 해도 안드로이드의 기본 기능 사용가능

-대부분 컴포넌트 실행(Runtime)시 함께 생성

-생성된 컴포넌트가 가지고 있는 메서드를 호출해 각각의 도구들 사용

-애플리케이션 컨텍스트와 베이스 컨텍스트가 있음

--애플리케이션 컨텍스트 : 애플리케이션과 관련된 핵심 기능을 담고 있는 클래스, 앱을 통틀어 하나의 인스턴트만 생성, 컴포넌트에서 직접호출해 사용가능, 호출 지점과 관계없이 모두 동일한 컨텍스트 호출

--베이스 컨텍스트 : 안드로이드의 4대 메이저 컴포넌트의 기반 클래스, 각 컴포넌트에서 baseContext또는 this로 사용, 컴포넌트의 개수만큼 컨텍스트도 함께 생성, 호출 지점에 따라 서로 다른 컨텍스트 호출

컴포넌트별 컨텍스트의 기능

 

*Intent(인텐트)

-'의도' 라는 뜻으로 개발자의 실행 의도를 인텐트에 담아 안드로이드에 전달하고 안드로이드는 해당 인텐트를 해석하고 실행함

-액티비티 실행 시 컨텍스트가 제공하는 메서드를 호출해 실행할 액티비티가 명시된 인텐트를 메서드에 전달

-프로젝트 생성 시 자동으로 만들어지는  MainActivity는 특별한 설정없이 안드로이드에 자동으로 등록되고 실행됨

-MainActivity외에 다른 액티비티 사용 시 인텐트에 새 액티비티 이름을 담아 시스템에 전달

 

 


이 포스팅에 작성한 내용은 고돈호, ⌜이것이 안드로이드다⌟, 한빛미디어(주), 2022 에서 발췌하였습니다.