유니티게임개발

Unity Android 64bit 지원

낙타2020 2020. 8. 21. 10:08

유니티로 다른 사람들이 만든 게임들을 만지다 보면 2017년도 이전에 만든 소스들을 종종 보게 됩니다.

그러면 게임은 너무 잘 만들어져 있는데 컴파일하고 출시하려고 보면 64bit 지원이 안되어서 낭패를 보게 되는 경험을 하게 됩니다.

 

구글플레이 정책상 2019년 8월 1일부터 플레이스토어에 올라가는 모든 어플들은 64비트를 지원하게 하였습니다.

 

이에 따라 유니티 빌드 셋팅도 바꾸어야 했습니다.

아래 화면은 Unity 2017.1.5f1 에디터 화면입니다.

 

Device Filter 부분에 ARMv7+x86으로 팝업메뉴에도 ARM64은 아예 없습니다.

 

유니티에서 64bit를 지원하는 ARM64을 포함하는 버전은 Unity 2017.4.18f1 부터입니다.

아래 화면은 Unity 2017.4.18f1 에디터의 셋팅 화면입니다.

 

 

ARM64이 포함되어 있는것을 볼 수 있습니다. 

ARM64를 포함해서 빌드를 해야하고 Scripting Backend는 IL2CPP로 선택해야 합니다.

 

이렇게 ARM64를 체크해서 빌드가 잘 끝나면 다행인데요.

그럼에도 불구하고 곳곳에서 에러를 뿜어낼 것입니다.

IL2CPP로 컴파일하게 되면 우선 JDK,NDK,SDK 인클루드에 관한 에러가 날 것입니다.

 

그러면 Edit->Preferences->External Tools로 가서 

 

 

각자 PC에 맞는 경로를 맞춰주면 됩니다.

NDK관련 경고 에러가 난다면 유니티 허브에서 NDK관련 모듈을 설치해 주시면 됩니다.

 

 

이제 64bit는 다 작업이 끝났을것으로 생각할 수 있습니다. apk 파일을 만들고 구글 플레이 콘솔에서 등록을 하는 순간

콘솔에서 에러를 보실 수도 있습니다.

 

이런 경우에는 대부분이 Android App Bundle 게시 형식이 아닌 apk 형식의 파일을 올렸을 경우 발생합니다.

 

위와 같이 App Bundle 형식으로 빌드를 하면 되겠습니다.

 

64bit 대응에 대해 알아보았습니다. 천천히 따라가다 보면 쉽게 해결하실 수 있습니다.