apk expansion 적용기

간단한 앱을 만들때는 용량이 크지 않지만 미디어 파일이 많이 내장된 게임 또는 멀티미디어 앱을 개발하면 100MB는 금새 초과한다. apk가 100MB 이상을 빌드하여 바로 구글 플레이에 업로드 할 수 있다면 편하겠지만 구글은 100MB 이상의 파일을 업로드 하기 위해서는 apk expansion 방식을 이용하여야 한다.

사용법은 아래 구글 사이트에 방문하면 자세히 나와있다.
https://developer.android.com/google/play/expansion-files.html

문서를 보고 이해하려면 파악에 많은 시간이 소요된다.
맨땅에 해딩하면서 알게된 지식이 몇년 지나면 리셋 될 수 있어 일기처럼 적용기를 기록한다.(현 기록 시점도 적용 후 약 8개월 만에 작성하고 있다.)


  • 업로드 방법
    • 구글 플레이에 apk를 등록하고 난 후 바로 obb를 추가로 등록한다.

  • 다운로드 방식
    • 구글 플레이에서 앱 다운로드시 대부분 apk 와 obb가 동시에 다운로드 된다.
    • 하지만 간혹 apk만 다운로드 되고 obb는 다운로드 되지 않는 케이스도 있다.
    • 이때는 수동으로 다운로드를 진행하여야 한다.(직접 다운로드 구현)

  • 외장 장치 권한
    • 구글 플레이에서 앱 다운로드시 apk와 obb가 함께 설치된다면 외장 장치 권한은 필요 없다.
    • 하지만 apk만 다운로드 되고 obb가 다운로드 되지 않았다면 이야기는 틀려진다.
    • obb를 외장 장치에 다운로드 하기 위해 외장 접근 권한이 필요하다.
    • 다운로드 받는 주체가 구글 플레이가 아닌 앱이기 때문이다.
    • 마시멜로 이상의 운영체제에서는 외장 장치 쓰기 퍼미션 체크를 먼저 하고 퍼미션 권한이 없으면 퍼미션 권한을 선 득 한 후 다운로드를 진행하여야 한다.
    • 외장 장치 쓰기 퍼미션은 민감한 권한으로 구글에서 별도의 약관을 고지하지 않으면 앱을 약관 위반으로 경고 메일이 온다.


  • 파일 용도
    • main : 주 기능
    • patch : 패치 기능


  • 파일 명명 규칙
    • main.[버전코드].[패키지이름].obb
    • ex) main.165.com.coolsharp.whitenoisepro.obb

  • 최대 용량
    • apk 100MB
    • main 2GB
    • patch 2GB

댓글

이 블로그의 인기 게시물

ViewPager offscreenPageLimit 메모리 상태

eskimo esim 사용기 - 일본 / 오사카(23/08/06 ~ 23/08/08)

ASP에서 C# 언어로 만든 DLL 호출