Unity/게임 플랫폼 응용 프로그래밍(GPGS)

Gradle build failed + sdk 업데이트 실패 (해결 : 권한문제)

치명적흑형 2021. 12. 2. 10:21

유니티 버전 : Unity 2020.3.23f1

 

구글 콘솔에 aab 파일을 업로드 하려던 중 발생한 문제

 

1.  SDK과 Gradle을 유니티 기본 경로로 사용

오토메틱으로 사용하면 aab가 빌드는 되지만

구글 콘솔 에서

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

 

 

2. SDK과 Gradle을 유니티 기본 경로로 사용

30으로 수동 설정하면 빌드시

창이 나오고 업데이트를 누르면 업데이트 실패 에러가 난다.

 

 

3. 안드로이드 스튜디오에서 SDK를 타겟 API까지 설치후 경로를 안드로이드 스튜디오 SDK 경로로 지정

Gradle build failed 에러 발생.

 

4. Gradle 버전의 문제인가 하여 (유니티는 6.1.1 / 안드로이드 스튜디오에선 7.0.2로 나옴)

Gradle 7.0.x 하위인 6.5.1을 설치하여 그래들 경로로 지정해줌

- 여기서 성공한 사례가 있음, 하지만 본인은 해결 못함

 

 

2번 문제를 해결했다.

해결 : 유니티 허브를 관리자 권한으로 실행


그래들 오류는 사람마다 다르기 때문에 해결법도 다 다르다고 한다.

 

그 외에 참고해본 해결법들

 

- 경로 한글파일 바꾸기

- 그래들 버전 7이하 사용, 해당 경로로 설정

- 안드로이드 스튜디오에서 Sdk 31레벨까지 설치(유니티에서 빌드세팅한 API Level까지) 후 sdk경로를 안드로이드 스튜디오 sdk 경로로 설정

- 그래들 캐시 삭제

- 유니티 sdk 수동업데이트

- 새 프로젝트에서 다시 빌드

- 유니티 허브 관리자 권한으로 실행

 

 

 

 

 

 


해결과정...

 

유니티 버전 : Unity 2020.3.23f1

빌드이유 : GPGS 빌드 테스트용

 

 

빌드는 성공, 구글 콘솔에서 버전이 맞지 않다고 나옴

 


위 설정에서

Other Settings 설정 바꿔서 빌드

 

 

SDK 업데이트 창이 나옴

 

업데이트 클릭

 

 

그래들 캐시 삭제 후 시도

 

그래들 캐시 + 라이브러리 삭제 후 시도

 


 

유니티 버전 : Unity 2020.3.22f1

빌드이유 : GPGS 빌드 테스트용

 

 

 


설정

 

 

해결 : 유니티 허브를 관리자 권한으로 실행

 

학원에서는 문제가 생겼는데

집에서는 문제가 생기지 않았다

 

차이가 뭘까 생각해 봤는데

 

업데이트 하는 과정에서 학원은 윈도우 파워쉘을 관리자 권한으로 실행하겠냐는 메세지가 나왔고

집에서는 나오지 않았다.

 

그래서 생각 해본것이 관리자 권한으로 실행하는 것 이었다.

 

이전에 빌드 에러 (Starting a Gradle Daemon) 문제가 생겼던 적이 있었는데 관리자 권한으로 해결했던것과


해당내용

유니티 허브 3.0베타의 문제, 유니티 허브를 관리자 권한으로 실행하지 않으면 JDK, SDK, NDK가 제대로 설치되지 않아서 생겼던 문제

 

유니티 허브를 그냥 (관리자 권한 없이)실행해서 유니티를 설치했다

무시 하고 재설치 진행

 

(https://cafe.naver.com/gameprogramming8)

(https://forum.unity.com/threads/install-failed-validation-failed.1147151/)


 

 

ML-Agent에서 pip을 업그레이드 할 때 관리자 권한으로 실행하지 않으면 삭제는 되지만 설치가 안되는 문제가 있었다. (https://chiheuk.tistory.com/367)

 


그래들 오류는 사람마다 다르기 때문에 해결법도 다 다르다고 한다.

 

그 외에 참고해본 해결법들

 

- 경로 한글파일 바꾸기

- 그래들 버전 7이하 사용, 해당 경로로 설정

- 안드로이드 스튜디오에서 Sdk 31레벨까지 설치(유니티에서 빌드세팅한 API Level까지) 후 sdk경로를 안드로이드 스튜디오 sdk 경로로 설정

- 그래들 캐시 삭제

- 유니티 sdk 수동업데이트

- 새 프로젝트에서 다시 빌드

- 유니티 허브 관리자 권한으로 실행