모바일 개발 · 기초
안드로이드에서 Intent의 역할은 무엇이며, Explicit Intent와 Implicit Intent의 차이점을 구체적인 사용 사례와 함께 설명해주세요.
힌트 · 컴포넌트 간 통신 및 작업 요청을 위한 메시지 객체입니다. 명시적 인텐트는 특정 컴포넌트 지정, 암시적 인텐트는 시스템에 요청합니다.
Intent컴포넌트 간 통신Explicit IntentImplicit Intent액티비티 호출
모범답안
Intent는 안드로이드에서 컴포넌트 간 통신을 담당하는 메시지 객체입니다. 주로 액티비티, 서비스, 브로드캐스트 리시버 등을 실행하거나 데이터를 전달할 때 사용됩니다.
Explicit Intent와 Implicit Intent는 Intent를 사용하는 방식에 차이가 있습니다.
Explicit Intent는 실행할 컴포넌트의 클래스 이름을 명확하게 지정합니다. 예를 들어, "MainActivity에서 SecondActivity를 실행해줘" 와 같이 특정 액티비티를 직접 호출할 때 사용합니다.
Implicit Intent는 실행할 컴포넌트의 클래스 이름을 지정하지 않고, 수행할 작업(Action)과 데이터(Data)를 지정합니다. 예를 들어, "웹 페이지를 열어줘" 와 같이 시스템에 특정 작업을 요청할 때 사용합니다. 시스템은 해당 작업을 처리할 수 있는 앱을 찾아서 실행합니다. 웹 브라우저 앱이 여러 개 설치되어 있다면, 사용자에게 어떤 앱을 사용할지 선택하도록 할 수 있습니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 Android / Kotlin 면접 질문
- 안드로이드 액티비티의 생명주기(Lifecycle)란 무엇이며, 주요 콜백 메서드(onCreate, onStart, onResume, onPause, onStop, onDestroy)의 역할에 대해 설명해주세요.
- 안드로이드에서 UI를 구성할 때 사용되는 대표적인 레이아웃(LinearLayout, RelativeLayout, ConstraintLayout) 각각의 특징과 어떤 상황에서 주로 사용되는지 설명해주세요.
- 안드로이드 개발에서 Context는 무엇을 의미하며, 어떤 상황에서 주로 사용되는지 최소 두 가지 이상의 예시를 들어 설명해주세요.
- AndroidManifest.xml 파일의 주요 역할은 무엇이며, 이 파일에 반드시 포함되어야 하는 정보들은 어떤 것들이 있는지 설명해주세요.