Android 자료실/버전 이슈

안드로이드(ANDROID) 14 - To call Service.startForeground(), the <service> element of manifest file must have the foregroundServiceType attribute specified (포그라운드 서비스 유형 문제)

Victorywskim 2024. 1. 1. 02:33
반응형

Android 10에서는 <service> 요소 내에 android:foregroundServiceType 속성을 도입되었는데 Android 14를 타겟팅하는 경우에는 필수로 선언 해줘야 하게끔 수정되었습니다.

 

targetSdk 를 34 이상으로 하는 경우에 포그라운드를 사용하고 있다면 다음과 같은 문제가 발생하게 됩니다.

 

이를 해결하기 위해서는 매니페스트 안에 다음과 같이 권한 설정 및 서비스 설정을 해주면 됩니다.

<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE"/>

...

<service
    android:name="서비스 명"
    android:foregroundServiceType="specialUse"
/>

 

 

서비스 종류는 다음과 같으니 참고하시면 되겠습니다.

 

 

포그라운드 서비스 유형은 필수 항목임  |  Android 개발자  |  Android Developers

Android 14 베타에 오신 것을 환영합니다. Android 14를 최고의 버전으로 만들 수 있도록 의견을 제공해 주세요. 포그라운드 서비스 유형은 필수 항목임 컬렉션을 사용해 정리하기 내 환경설정을 기준

developer.android.com

 

반응형