개요
빌드박스를 이용하여 게임을 만들었습니다.
이걸 구글스토어에 올리는 작업인데, 지난번까지만 하더라도 잘 되던 것이 갑자기 이런 에러가 뜹니다.
현재 앱이 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" 를 추가한다.
'안드로이드' 카테고리의 다른 글
빌드박스 buildbox 안드로이드 12 업데이트 후 게임 실행 안될 때 수정하는 방법 (0) | 2022.09.02 |
---|---|
안드로이드 프로덕션 버전 만들기 Android App Bundle이 서명되지 않았습니다. 에러 해결방법 (0) | 2022.06.15 |
안드로이드 앱 출시시 필요한 이미지, 그래픽이미지 생성방법 (0) | 2022.06.10 |
댓글