본문 바로가기
안드로이드

buildbox 앱 업로드 중 에러 - 현재 앱이 30의 API 수준을 타겟팅하고 있지만, 보안 및 성능에 최적화된 최신 API를 기반으로 앱을

by 유기농프로그래밍 2022. 8. 18.
반응형

개요

빌드박스를 이용하여 게임을 만들었습니다.
이걸 구글스토어에 올리는 작업인데, 지난번까지만 하더라도 잘 되던 것이 갑자기 이런 에러가 뜹니다.

현재 앱이 30의 API 수준을 타겟팅하고 있지만, 보안 및 성능에 최적화된 최신 API를 기반으로 앱을 빌드하려면 API 수준 31 이상을 타겟팅해야 합니다. 앱의 타겟팅 API 수준을 31 이상으로 변경하세요.

구글링을 마구마구하며 찾아봤습니다.
일단 앱 API니 SDK 버전 문제로 나타났습니다.

안드로이드 스튜디오에서 SDK를 API Level 31인 Android 12.0 을 체크하고 다운받습니다.

이렇게 설치만 하면 끝? 아닙니다.

이대로 다시 bundle을 만들어 업로드하면 아래와 같이 됩니다. 하하...

재시도

안했던 것이 바로 SDK를 업데이트 했으면 그 SDK를 사용하도록 하는것이겠죠?

bundle.gradle을 눌러보면 compileSdkVersion 이 30으로 되어 있었습니다. 31로 수정,
그리고 defaultConfig의 targetSdkVersion도 31로 바꿔놨습니다.


마지막 재시도라 생각했지만...

인텐트 필터를 포함하되 'android:exported' 속성을 설정하지 않고 활동, 활동 별칭, 서비스 또는 broadcast receiver가 있는 APK 또는 Android App Bundle을 업로드했습니다. Android 12 이상에는 이 파일을 설치할 수 없습니다. 참조: developer.android.com/about/versions/12/behavior-changes-12#exported


구글링을 하니 AndroidManifest.xml 파일 안에 android:exported="true"를 넣어주면 된다고 합니다.

AndroidManifest.xml

android:exported="true"

드디어 성공 >_<

몇번만에 업로드 성공했습니다.
시간은 대략 1~2시간이 흘러있군요.. 하하..

요약

API 수준 31 이상을 타겟팅 방법
1. SDK를 API 31 받는다.
2. bundle.gradle 파일의 compileSdkVersion 을 수정한다.
3. AndroidManifest.xml 파일의 activity에 android:exported="true" 를 추가한다.

반응형

댓글