Android play store에서 대용량 게임 업그레이드 후 실행 문제 해결 내용을 잊기 전에 정리 해 봅니다.




최근 업데이트한 게임(Angry Birds 2 이하 AB 2)이 갑자기 실행이 되지 않고... 이상한 메시지만 보이는 문제가 있었습니다.


문제 보고 메시지가 단지 ". Google Play" 라고만 나오는데, 황당할 따름이죠.

더욱이 AB 2 의 경우 Google 계정으로는 백업이 되지 않습니다. 

결국 Rovio 쪽으로도 contact 했지만 - 역시나 그들도 뭘 알겠습니까?!


앞서 이상한 메시지라도 바로 보기 위해 device 언어를 한글 -> 영어로 바꾸어서 실행하니 문제가 명확 해 지더군요.

요약하면 "Asset 을 읽어 들일 수 없다. 삭제 후 재설치 해라" 라는 영문 메시지가 이제 서야 잘 보이더군요. 한글 상태에서는 어떤 이유에서인지 - 아마도 번역이 제대로 되지 않았지 않을까 상상만.


어찌 되었건 문제를 해결하려면 재설치 인데 - 그러면 data가 모조리 날아 가기에 제가 했던 게임 내용도 포기 해야 합니다. 그렇게는 할 수 없고... APK를 직접 구해서 재설치 하는 방향으로 바꾸었습니다.


다행이 AB 2 의 경우 유명 게임이기도 하고 해서 apkplz.com 이라는 곳에서 APK를 쉽게 구할 수 있습니다.


그리고 알아낸 것이 게임의 경우 한개의 초 대용량 APK가 아닌, OBB 파일을 따로 두어서 별도 리소스 부분은 이 OBB에 두는 형식 이더군요!


문제가 분명 해 졌습니다!

Play store에서 분명 업그레이드를 했음에도 불구하고(Google이 잘못 했네?) APK는 제대로 설치(실행은 되니) 별도 리소스 파일인 OBB에 문제가 있었던 것이죠.


아래 위치에 있어야 할 data파일이 누락되어 있었던 것입니다.

문제 상황에서 아래의 obb/com.rovio.baba 가 통으로 존재 하지 않았다는 문제!

/storage/emulated/0/Android/obb/com.rovio.baba/main.2060008.com.rovio.baba.obb


그런데 디렉토리 흔적은 아래에서 확인이 됩니다. 즉 파일은 미존재 상태.

/storage/extSdCard/Android/obb/com.rovio.baba/



결국 앞서 언급한 APK 저장 사이트(apkplz.com)에서 패키지를 다운로드 후, 수작업으로 .obb 파일을 올려 두니 이제 서야 게임이 정상 작동!



요약

(게임과 같은 단일 APK로 설치가 완료 되지 않는 경우)

실행이 되지 않는 문제가 있을 경우 .OBB 파일이 제대로 설치 되었는지 확인 후 적절히 해당 파일을 복사 하면 잘 실행 됨.


아래는 apkplz.com 에서 언급한 해당 사항입니다.


This download file have .apk and .obb (data) file.

Install APK and OBB on your android phone:


Place the APK file in your phone’s SDcard or Internal memory (preferably external SDcard).

Browse your phone memory/external memory and tap on the APK file.

Click ‘install’

Wait for the APK to install.

Do not run the application yet.

Copy the OBB folder to SDCard, ex: SDCARD/Android/obb/com.rovio.baba/obb_filename*

What are .OBB file?

.OBB file are APK Expansion Files Developers create OBB files to contain and bundle larger assets using the JOBB tool for Android SDK. They hold additional encrypted format data not stored in the main application package, including graphics and media files. They can be uploaded with the APK file using the Google Play Developer Console.



기술 자료를 좀더 보니, .obb 파일에 대한 관리를 application에서 직접 할 수 있더군요.

즉 실행 시점에 해당 파일이 없거나 문제가 있을 경우, 혹은 의도적으로 처음 실행시에 .obb 파일을 application에서 직접 다운로드가 가능 하다는 것!

즉 1차 잘못은 구글 설치자에 있었겠지만, 궁극적으로는 Rovio 의 AB 2에서 실행 시점에 해당 파일이 어떤 연유로 없거나 사용 불가면 다시 한번 다운로드 처리 해야 하는데 그러한 예외 처리가 빠져 있는 것 같네요.


Most of the time, Google Play downloads and saves your expansion files at the same time it downloads the APK to the device. However, in some cases Google Play cannot download the expansion files or the user might have deleted previously downloaded expansion files. To handle these situations, your app must be able to download the files itself when the main activity starts, using a URL provided by Google Play.



+ Recent posts