스택큐힙리스트

안드로이드에서 'Context'란 무엇인가요? 본문

카테고리 없음

안드로이드에서 'Context'란 무엇인가요?

스택큐힙리스트 2023. 3. 23. 04:12
반응형

안드로이드 프로그래밍에서, Context 클래스는 정확히 무엇이며 어떤 용도로 사용되는가?

나는 그것에 대해 developer site 에서 읽었지만, 명확하게 이해할 수 없습니다.

답변 1

간단히 말하면:

이름에서 알 수 있듯이, 애플리케이션/객체의 현재 상태와 관련된 문맥입니다. 이를 통해 새로운 객체가 무슨 일이 일어나고 있는지 이해할 수 있습니다. 일반적으로, 프로그램의 다른 부분 (활동 및 패키지/애플리케이션)에 대한 정보를 얻기 위해 호출합니다.

Context 클래스에서 상속받은 클래스(Application, Activity, Service 및 IntentService 클래스와 같은)에서 getApplicationContext() , getContext() , getBaseContext() 또는 this 를 활용하여 컨텍스트를 가져올 수 있습니다.

일반적인 맥락 사용:

새로운 객체 생성:

새로운 뷰, 어댑터, 리스너 생성:

TextView tv = new TextView(getContext());

ListAdapter adapter = new SimpleCursorAdapter(getApplicationContext(), ...);

표준 공통 자원에 액세스하기:

레이아웃 인플레이터 서비스, SharedPreferences와 같은 서비스:

context.getSystemService(LAYOUT_INFLATER_SERVICE)

getApplicationContext().getSharedPreferences(*name*, *mode*);

암시적으로 구성 요소에 액세스 :

콘텐츠 제공자, 방송, 인텐트 관련

getApplicationContext().getContentResolver().query(uri, ...);

답변 2

안드로이드에서 'Context'란 무엇인가요?

안드로이드 애플리케이션을 개발하면서, 'Context'는 매우 중요한 요소입니다. 이것은 안드로이드 애플리케이션 내부에서 각종 리소스를 액세스하고, 작업을 수행하는 데 필요한 정보를 제공하는 객체입니다. 이번 글에서는, 안드로이드 애플리케이션 개발에서 가장 중요한 객체인 'Context'에 대해 자세히 알아보도록 하겠습니다.

'Context'는 안드로이드 애플리케이션 내에서 액티비티, 서비스, 브로드캐스트 리시버 등 모든 구성요소에서 사용할 수 있는 추상 클래스입니다. 모든 구성요소는 'Context'를 사용하여, 안드로이드 시스템 또는 다른 구성요소와 상호작용하며, 사용자에게 표시될 수 있는 뷰와 리소스에 액세스할 수 있습니다.

'Context'는 두 가지 유형으로 나눌 수 있습니다. 첫 번째는 애플리케이션 컨텍스트(Application Context)이며, 애플리케이션 전체에 대한 정보를 제공합니다. 이는 애플리케이션의 생명주기와 관련된 정보를 가지며, 애플리케이션에 따라 생성되는 모든 구성요소에서 공유됩니다.

두 번째 유형은 액티비티 컨텍스트(Activity Context)이며, 액티비티의 생명주기와 관련된 정보를 제공합니다. 이는 액티비티에 종속되며, 액티비티에서만 사용 가능한 리소스에 액세스할 수 있습니다.

이러한 'Context' 객체를 사용하여, 리소스를 로드하거나 저장하며, 뷰를 생성하고 다양한 이벤트를 처리할 수 있습니다. 또한, 안드로이드 시스템과 상호작용하며, 다른 애플리케이션과 연동하기 위해 다양한 Intent를 전달할 수 있습니다.

안드로이드 애플리케이션 개발에서 'Context'는 매우 중요한 개념이며, 이를 적절하게 이해하고 활용하는 것이 애플리케이션 개발의 성공과 직결됩니다.

이상으로, 안드로이드에서 'Context'란 무엇인지에 대해 알아보았습니다. 이를 적절하게 활용하여, 안드로이드 애플리케이션 개발을 보다 효율적이고 성공적으로 수행할 수 있기를 바랍니다.

반응형
Comments