CommandInvokationFailure: Failed to update Android SDK package list.
유니티 에디터(특히 2021.3.34 f1)에서 앱 빌드 시에 위 제목과 같은 메시지를 출력하며 실패가 되는 경우가 있다.
원인은 유니티가 설치되는 폴더의 위치 때문인데, "C:\Programe Files\ ... " 와 같이 폴더 이름 중간에 공백이 있어서 발생하는 것이다.
해결하는 방법으로는 2가지가 있다.
1. 유니티 설치 위치 변경
유니티가 기본 설치되는 위치는 C:\Program Files\Unity\Hub\Editor 일 것이다.
이 설치 위치를 유니티 최초 설치할 때 부터 C:\Unity\Hub\Editor 와 같이 공백이 없는 위치로 지정하는 것이다.
이미 기본 위치에 설치한 사람이라면 설치 삭제(Uninstall) 후에 다시 설치해야 하는 번거로움이 있을 것이다.
2. 배치(batch) 파일 변경
위 에러 메시지가 출력되는 시점이 다음 배치파일이 실행되면서 일 것이다.
C:\Program Files\Unity\Hub\Editor\2021.3.34f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\cmdline-tools\2.1\bin\sdkmanager.bat
위 배치파일을 편집기로 열면 17번째 라인에 다음과 같은 내용이 보일 것이다.
set DEFAULT_JVM_OPTS=-Dcohttp://m.android.sdklib.toolsdir=%~dp0\..
위 내용을 다음과 같이 변경한다.
set DEFAULT_JVM_OPTS="-Dcohttp://m.android.sdklib.toolsdir=%~dp0\.."
그리고 저장.
이 후 정상적으로 빌드 되는 것을 확인할 수 있다.