Belle et Sébastien, fighting Android’s APK 50mb limit

It’s already time for a new app, Belle et Sébastien!

IMG_0067IMG_0068Belle et Sébastien is a famous old french book and there was a TV series. A movie is planned for the end of the year.
In this mobile application, we discover B&S’ world: an album introduce the characters and relates several informations based on elements existing in the movie: Génépi, snow, WWII, wolf, sheeps…
There is also a game, a kind of Where’s Wally?. Through pictures from the movie, you’ve to search hidden characters, animals, objects, etc.

Android’s APK 50mb limit
The development was going great until we had to release the application for Android. The app is 90mb, we wanted to be sure that it could be downloaded via 3G on mobile phone for iOS devices (limited to 100mb). When we uploaded the Android’s APK it fails because of its size: an APK can’t exceed 50mb!
I didn’t know that, what a mess! Quickly, I heard about APK expansion files. Apart form the APK, we’re able to upload two obb files, each file could be up to 2Gb! I can’t understand why Google is limiting APK to 50mb when the final application could be up to 4.05Gb. Anyway, that was the way to go. Note that you can also download yourself a zip and save the its content on disk to be used in your application, but it sounds so much user friendly to have everything downloaded at one time!

The issue finally was: how to use this obb file with AS3/AIR? I discovered this Actionscript Native Extension: Android APK expansion files, and everything worked like a charm!

To generate an obb file (don’t forget to add .obb extension to the file):

./jobb -pn -pv 1 -o /Users/Aymeric/Documents/Workspace/Flash/2013/Europa\ Apps/BelleEtSebastien/obbToUpload/ -d /Users/Aymeric/Documents/Workspace/Flash/2013/Europa\ Apps/BelleEtSebastien/bin/images

More informations there.

Available on iOS and Android, gives Belle et Sébastien a try! Note that translations are coming 😉

2 thoughts on “Belle et Sébastien, fighting Android’s APK 50mb limit

  1. Hi, we had the same issue even though we knew of this limit ahead of development. We opted for another solution which is to download some assets and cache them locally before accessing parts of the game for which they are required.
    This approach has some benefits IMHO, even though it’s more error prone and can frustrate the user who has to wait before getting to play. Mainly, we wanted to have a solution that works on both iOS and Android, since we would blow up the 100Mo anyways. Also, we should be able to reuse assets when the application is updated (not sure if the same is doable with APK extensions files).
    Have you ever considered this approach ?

  2. Hi Antoine,

    Your solution is perfect if you want your game to be downloable on a 3G connexion (so less than 100 mo for Apple) and as a cross platform solution.
    On our side, the size wasn’t an issue (on iOS) and we wanted to package the app without external download. So obb was the solution.
    On a bigger (> 100 mo) IPA, I would have certainly do the same solution than you if it was also planned for Android. Finally it will mostly depend on client willing 😉

Leave a Reply

Your email address will not be published. Required fields are marked *