exported
- 다른 앱의 구성요소(액티비티, 서비스 ,broadcast receiver 등)에서 실행할 수 있는 구성요소인지 설정
- true : 모든 앱이 구성요소에 엑세스 할 수 있고 구성요소의 정확한 클래스 이름으로 구성요소를 실행할 수 있습니다.
- false : 같은 앱에 있는 구성요소나 동일한 사용자 ID를 가진 애플리케이션 또는 권한이 있는 시스템 구성요소만 구성요소를 실행할 수 있습니다.
- 사용자 ID
- 기본적으로 각 앱에 고유한 사용자 ID(User ID, UID)를 할당합니다.
- 그러나 여러 앱이 동일한 사용자 ID를 공유하도록 설정할 수 있습니다.
- 메니 페스트 파일에서 android: shareUserId 속성을 동일한 값으로 설정한다.
- 데이터와 프로세스를 공유할 수 있습니다.
- 사용자 ID
launchMode
- standard (기본값)
- 액티비티를 호출할 때마다 액티비티를 초기화하여 스택에 추가하는 것
- 동일한 액티비티를 호출해도 계속 새로운 인스턴스가 스택에 추가됨
- singleTop
- 스택의 최상단에 동일한 인스턴스가 있으면 또 생성하지 않는다.
- 스택의 최상단에 동일한 인스턴스가 없으면 생성함
- 기존 인스턴스 사용하고 필요하면 onNewIntent를 호출
- singleTask
- 모든 스택에서 그 액티비티의 인스턴스가 있으면 그 인스턴스를 재활용 한다.
- 존재하는 인스턴스를 최상단으로 보내고 존재하는 인스턴스의 위에 있던 모든 액티비티는 제거한다.
- 재사용하는 인스턴스에 대해 onNewIntent를 호출
- singleInstance
- singleInstance는 완전히 독립된 task에서 실행됨
- 액티비티가 실행되면 다른 액티비티와 공유되지 않는 독립적인 task를 생성
- 하나의 인스턴스만 사용
- 액티비티는 다른 액티비티와 공유되지 않는 독립된 task를 생성
- 전화앱같은 독립적으로 사용하는 액티비티에 사용
<intent-filter>
- <action android:name="android.intent.action.VIEW" />:
- 특정 데이터를 보거나 처리할 때 사용됨
- 웹 브라우저로 url을 열거나 특정 데이터를 다른 앱에서 열 때
- 주로 웹페이지나 특정 데이터와 관련된 액티비티를 호출
- <category android:name="android.intent.category.DEFAULT" />:
- 기본적인 카테고리
- 인텐트 필터가 명시적으로 지정된 인텐트를 수신할 수 있도록 설정
- 보통 명시적으로 호출되는 인텐트를 처리할 때 사용
- Intent intent = new Intent(this, MyActivity.class);
- <category android:name="android.intent.category.BROWSABLE" />:
- 웹브라우저나 웹뷰에서 링크를 클릭했을때 앱을 열수 있게 허용함
'android > manifest' 카테고리의 다른 글
안드로이드 알림 권한 : POST_NOTIFICATIONS (0) | 2025.05.22 |
---|---|
android:requestLegacyExternalStorage="true" (0) | 2024.12.05 |
<application> (2) | 2024.11.18 |