APK 확장 파일은 Google Play 스토어의 100MB 앱 크기 제한에 대한 해결 방법입니다. 만일 앱이 100MB를 초과하는 경우(이는 대형 게임의 경우 흔한 일입니다) 출력 패키지를 주 부분(APK)과 확장 파일(OBB)로 나누어야 합니다. 이에 대한 자세한 내용은 확장 파일에 대한 Android 개발자 문서를 참조하십시오.
Unity는 자동으로 출력 패키지를 APK와 OBB로 나눕니다. 물론 이는 앱 패키지를 나누는 유일한 방법은 아니며, 에셋 번들과 서드 파티 플러그인을 추가하는 방법도 있습니다. 하지만 이는 Unity가 유일하게 지원하는 자동 분할 매커니즘입니다.
만일 Unity가 자동으로 앱 출력 패키지를 APK와 OBB로 분할하게 하려면 Player (메뉴: Edit > Project Settings , Player 카테고리 선택) 설정을 열고 Publishing Settings 패널 내에 있는 Split Application Binary 프로퍼티를 활성화합니다.
출력 패키지의 두 부분 모두(APK 및 OBB) 앱을 빌드할 때 사용자가 지정한 출력 디렉토리로 복사됩니다. 예를 들어 APK의 이름이 mygame.apk 인 경우 OBB는 동일한 디렉토리 내 위치한 mygame.main.obb 파일로 저장됩니다.
Build and Run 을 선택한 경우 Unity는 디바이스에 APK와 OBB 파일을 설치합니다. Build 를 선택하고 ADB 유틸리티를 사용하여 앱을 수동으로 설치하려면 APK 파일을 우선 설치한 후 OBB를 디바이스의 올바른 위치에 복사해야 합니다. OBB 파일 이름은 Google이 요구하는 포맷에 부합해야 합니다. 자세한 내용은 Android 개발자 문서의 확장 파일 섹션을 참조하십시오.
앱이 시작하였으나 OBB를 찾아서 로드할 수 없는 경우 첫 씬만을 사용할 수 있게 됩니다(아래에 APK와 OBB간 데이터가 어떻게 분할되는지에 대한 자세한 설명이 있습니다). OBB의 콘텐츠를 분리하여 사용하지 마십시오. APK와 OBB는 각각의 번들로서 단일 APK를 취급하듯 해야 합니다.
Split Application Binary 옵션이 활성화된 경우 앱은 다음과 같이 분할됩니다.
APK - 실행 가능 파일(Java와 네이티브), 플러그인, 스크립트, 첫 씬 데이터(Index 0)를 포함합니다.
OBB - 나머지 씬, 리소스, 스트리밍 에셋 등 나머지 모두를 포함합니다.
만일 APK가 Google Play 스토어에서 퍼블리시하기에는 너무 큰 경우(100MB 이상) 첫 씬의 크기를 최대한 줄입니다.
Unity가 사용할 수 있는 수정된 버전의 Google Play market_downloader
라이브러리에 접근할 수 있는 플러그인이 Unity 에셋 스토어 에 있습니다. 이는 Google Play 스토어나 외부에서 OBB를 다운로드 받아서 올바른 디렉토리 내로 옮길 수 있도록 합니다.
OBB 확장 파일은 APK와 함께 Google Play 스토어에 퍼블리시 되어야 합니다. APK와 퍼블리시된 OBB 파일은 사용자가 앱을 Google Play 스토어에서 설치하는 경우 자동으로 다운로드 됩니다.
Google Play 스토어에서 오류가 발생하거나 사용자가 OBB 파일을 디바이스에서 제거한 경우를 대비해 앱에서 OBB 파일을 다운로드할 수 있는 코드를 포함해야 합니다. OBB 파일 다운로드에 대한 자세한 내용은 Android 개발자 문서의 APK 확장 파일을 참조하십시오.
Google Play 스토어를 사용하지 않고도 OBB 파일을 호스팅할 수 있습니다. 하지만 Google Play 스토어를 사용하지 않고 OBB 파일을 호스팅하는 것은 고급 사용자에게만 권장합니다.
2017–05–25 편집 리뷰를 거쳐 페이지 게시됨
5.5에서 업데이트 된 기능