본문 바로가기
Development/Android

[android] targetSdkVersion 31 적용 에러 "Safer component exporting"

by Sonagiya 2022. 3. 3.
반응형

프로젝트 타겟을 31로 변경하여 빌드 시 에러발생

android:exported needs to be explicitly specified for <activity>. Apps targeting Android 12 and higher are required to specify an explicit value for `android:exported` when the corresponding component has an intent filter defined. See https://developer.android.com/guide/topics/manifest/activity-element#exported for details.

 

검색 시 안드로이드12를 타겟팅하는 앱 변경사항 중 하나의 항목이 있다 "Safer component exporting"

https://developer.android.com/about/versions/12/behavior-changes-12#exported

 

동작 변경사항: Android 12를 타겟팅하는 앱  |  Android Developers

모든 앱에 영향을 주는 Android 12의 변경사항을 알아봅니다.

developer.android.com

 

따지는건 아니지만 기본값은 왜 정해둔걸까요?...

https://developer.android.com/guide/topics/manifest/activity-element?hl=ko#exported 

 

Android 개발자  |  Android Developers

애플리케이션의 시각적 사용자 인터페이스 일부를 구현하는 활동(Activity 서브클래스)을 선언합니다. 모든 활동은 매니페스트 파일의 {@code} 요소로 나타내야 합니다. 여기에 선언되지 않은 활동

developer.android.com

 

수정해야 빌드가 되니 수정합시다...

intent-filter 가 있는 항목에 exported를 명시적으로 추가하면 정상적으로 빌드가 됩니다.

 

 

 

 

 

 

반응형

댓글