모바일 개발 · 기초
안드로이드 개발에서 Context는 무엇을 의미하며, 어떤 상황에서 주로 사용되는지 최소 두 가지 이상의 예시를 들어 설명해주세요.
힌트 · 애플리케이션 환경 정보에 접근하고 시스템 서비스에 대한 접근을 제공합니다. 리소스 접근, 새 액티비티 시작 등에 사용됩니다.
ContextApplication ContextActivity Context리소스 접근시스템 서비스
모범답안
Context는 안드로이드 애플리케이션의 현재 상태에 대한 인터페이스입니다. 쉽게 말해 앱의 환경 정보에 접근하고 시스템 서비스에 접근할 수 있도록 해주는 역할을 합니다.
주로 사용하는 경우는 다음과 같습니다.
리소스 접근: Context를 통해 앱의 리소스 폴더 (drawable, layout 등)에 있는 이미지, 문자열, 레이아웃 파일 등에 접근할 수 있습니다. 예를 들어,
context.getResources().getString(R.string.app_name)과 같이 문자열 리소스를 가져올 수 있습니다.새 액티비티 시작: 새로운 액티비티를 시작할 때 Context가 필요합니다.
context.startActivity(intent)와 같이 인텐트를 사용하여 새로운 화면을 띄울 수 있습니다.
Context는 Application Context와 Activity Context 등 다양한 종류가 있으며, 각각의 생명주기와 사용 목적이 다릅니다. 상황에 맞는 Context를 사용하는 것이 중요합니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 Android / Kotlin 면접 질문
- 안드로이드 액티비티의 생명주기(Lifecycle)란 무엇이며, 주요 콜백 메서드(onCreate, onStart, onResume, onPause, onStop, onDestroy)의 역할에 대해 설명해주세요.
- 안드로이드에서 Intent의 역할은 무엇이며, Explicit Intent와 Implicit Intent의 차이점을 구체적인 사용 사례와 함께 설명해주세요.
- 안드로이드에서 UI를 구성할 때 사용되는 대표적인 레이아웃(LinearLayout, RelativeLayout, ConstraintLayout) 각각의 특징과 어떤 상황에서 주로 사용되는지 설명해주세요.
- AndroidManifest.xml 파일의 주요 역할은 무엇이며, 이 파일에 반드시 포함되어야 하는 정보들은 어떤 것들이 있는지 설명해주세요.
- 안드로이드 UI 구성의 기본 요소인 View와 ViewGroup의 차이점을 설명하고, 각각의 예시를 들어주세요.
- Kotlin의 Null Safety 기능은 무엇이며, 이를 위해 사용되는 '?' (nullable type)와 '!!' (non-null assertion operator)의 역할과 사용 시 주의점에 대해 설명해주세요.