android context 란 무엇이며 this 와 getapplicationContext 차이점 ?

Jamezz Dev·2021년 3월 24일
0

android 기술정리

목록 보기
1/1

context 의문의 시작점

애플리케이션을 개발하다보면 무조건 사용하게 되는 context.
약간은 암묵적인 동의랄까 아무런 의심과 의문을 갖지 않고 사용하게 된다.
이번에 유지보수를 하기 위해 리팩토링을 하던중 같은 액티비티에서 context를 가져오는데
this 와 getapplicationContext가 혼용되어서 사용되는 것을 보며 의문을 갖게 되었다...

이것의 정확한 차이는 무엇일까???

context 란 뭐지?

Google Developer 문서를 참조하면

애플리케이션 환경에 대한 글로벌 정보에 대한 인터페이스로 안드로이드 시스템에서 구현을 제공하는 추상클래스 입니다.
이를 통해 애플리케이션 별 리소스 및 클래스 액세스 할 뿐만 아니라 활동 시작, 인텐트 브로드 캐스트 수신등과 같은 애플리케이션 수준 작업에 대한 상향 호출이 가능하다.

좀 길다...
요약 하면 다음과 같다

Context 란?

Activity Manager Service에 접근할수 있는 통로로 리소스,인텐트, 브로드 캐스트 리시버를 호출할수 있도록 한다.

Context의 종류

  • Application Context
  • Activity Context
    이렇게 두가지로 나뉘는데 두개의 차이점은 생명주기가 애플리케이션을 따르는지 아님 액티비티를 따르는지의 차이가 있다
    그렇기 때문에 Context를 사용할때 해당 코드가 어떤 생명주기에 맞춰 적절한 Context 종류를 선택하는게 필요한듯 싶다.
profile
💻디지털 노마드를 🚀꿈꾸는 🇯🇲자메즈 🐥개발자 입니다.

0개의 댓글