[android] APK Expansion 사용하기

[android] APK Expansion 사용하기

apk가 100MB다.

구글 플레이 스토어에 올리려고보니

screenshot_2014-12-01_PM 9.03.57

이런게 뜬다. 와 식겁했다.

 

 

이리저리 검색해보니 APK 확장 파일(APK Expansion Files) 라는 기능을 사용하면 되나 보다.

설명은 http://developer.android.com/google/play/expansion-files.html

 

 

 

어려운건 예제를 만들어야 이해가 쉬운 법!

 

 

 1. 예제 프로그램 작성

asset을 사용하는 예제 프로그램을 만든다.

screenshot_2014-12-01_PM 9.15.26

 

 

 

 

device-2014-12-01-211745

 

 

device-2014-12-01-211754

 

클릭하면 가운데의 이미지가 img_002에서 img_001로 바뀐다.

 

 

screenshot_2014-12-01_PM 8.56.30

일단 마켓의 알파에다 업로드를 한다.

(최초 업로드에서는  확장파일을 올릴 수 없다)

 

알파테스트 등록하는건 알아서 하는걸로…

 

 

 

2. 라이브러리 다운로드

SDK 매니저에서

screenshot_2014-12-01_PM 9.20.20

Google Play APK Expansion Library, Google Play Licensing Library 를 다운로드 한다.

 

그런 다음 아래의 프로젝트를 import 한다.

sdk ▸ extras ▸ google ▸ play_apk_expansion ▸ downloader_library

sdk ▸ extras ▸ google ▸ play_apk_expansion ▸ zip_file

sdk ▸ extras ▸ google ▸ play_licensing ▸ library

 

혹시나 downloader_library에서 오류가 나면 play_licensing 을 다시 등록해주면 된다.

screenshot_2014-12-01_PM 9.26.39

 

 

아마도 자동으로 혹은 컴파일을 해주면 jar 파일이 생긴다.

sdk ▸ extras ▸ google ▸ play_apk_expansion ▸ downloader_library ▸ bin ▸ downloader_library.jar

sdk ▸ extras ▸ google ▸ play_apk_expansion ▸ zip_file ▸ bin ▸ zip_file.jar

 

요 두 파일을 아까의 저 프로젝트의 libs에 복사한다.

screenshot_2014-12-01_PM 9.29.56

 

 

3. asset 에서 이미지 불러오는 부분 수정

asset을 불러오는 방법이 바뀌어야 하니까 코드를 수정한다.

 

소스 가져온 곳 : Using the APK Expansion Zip Library

 

혹은 이 렇게 사용해도 된다.

 

 

 

이 상태로 이클립스에서 실행하면 당연히 이런 오류가 난다.

 

 

screenshot_2014-12-01_PM 9.51.47

assets에서 img_001을 제거한다.

 

 

read 퍼미션도 필요하다.

 

screenshot_2014-12-01_PM 9.47.20

menifest의 버전을 하나 올리고 다시 apk를 만든다.

 

 

screenshot_2014-12-01_PM 9.53.30

그리고 img_001 파일은 압축파일로 만든다.

파일 이름은 아무렇게나 해도 괜찮다.

 

 

마켓에 가서 업로드를 한다.

screenshot_2014-12-01_PM 9.54.59

apk를 업로드하면 이런 창이 뜨고,   “확장 파일 없음” 을 선택해서 img_001.png.zip을 업로드하면

 

screenshot_2014-12-01_PM 9.55.20

이렇게 바뀐다.

 

앱을 출시하고, 알파테스터가 받아서 확인해보면 된다.

 

 

 

4. 마켓에서 다운받은 후

몇 번의 실패 후 드디어 성공했다 ㅠㅠ

 

screenshot_2014-12-02_PM 4.45.21

일단 마켓에서 다운을 받으면 저렇게 파일이 자동으로 생긴다.

아마 마켓에서 다운로드 하는 중간에 같이 받아지는 것 같다.

 

 

 

5. 팁

앱을 지우면 저 obb 파일도 같이 지워지기 때문에 테스트하기가 너무 골치아팠다.

혹시나 다른 앱에서 저 파일을 읽을 수 있는지를 해봤는데, 다행히 잘 된다 ㅎ