App bigger than 50MB

Hi,

This is my very first post here. I’m very exited :slight_smile:

I’m building an app which is some sort of catalog. This app is aimed for both, iOS and Android devices.

The total size of the app after building it for iOS is +130MB, I know there’s a limit of 50 MB for over-the-air downloads.

Obviously, the files that are making this app so big are images. I have an “image” folder wich is splited into four sub folders corresponding to the chapters of the catalog.

Looking for possible solutions I found the network.download() API as an option but I’m not sure how to implement it for my case.

What I’m planning to do is:

  1. Upload the app top the AppStore and Google Play without the sub folders of the “images” folder

  2. Upload those sub folders on a server as .zip files

  3. Once a user downloads the app use network.download() API to download the .zip files from the server

  4. Once the files are downloaded use the zip.uncompress() API to extract the photos of the  sub folders to the “images” folder

Are these steps the correct path to follow?

Does these steps apply to Android too?

Are there other (better) solutions to implement?

Thanks in advance!

Hi @pgarza,

The following tutorial might be helpful to you, about “updating content in runtime”:

http://www.coronalabs.com/blog/2013/03/19/updating-mobile-game-content-in-runtime-guest-post/

Sincerely,

Brent Sorrentino

Brent Sorrentino,

Thank you for the quick reply! I’ve read the tutorial and it seems to be a good starting point for what I’m trying to do. But, given the size of the files that will be downloaded (80 to 100 MB) I think it would be a good idea not to host these files on my server due to traffic issues.

I know it may not be related at all wit Corona SDK -and I don’t want to be out of topic- but do you recommend some third party service to serve these files?

Best regards,

Paolo G

Hi Paolo,

Good to hear that you have a potential solution (implementation) underway. I don’t have a specific hosting service to recommend, but I might suggest that you reduce the size of these downloads somewhat, or make them into multiple smaller files… simply in consideration to the overall end-user experience.

Best regards,

Brent

Hi Brent,

Thank you very much for your suggestion, in fact I was working on it during the weekend. So far I’ve managed to reduce the overall size of the app simply by re-optimizing some JPG and PNG files.

I think the best option for me is to have two versions of the app:

  • One for iPhone / iPod Touch which doesn’t include @4x images
  • And other for iPad / iPad Retina (with support for @4x images)

The total size of the file after building the project for iOS of the first version (with no @4x images) is 45 MB! Meaning it is still available for over-the-air downloads, whereas the second option will be the candidate to implement the possible solution (downloading files) from a server.

Best regards,

Paolo

Keep in mind the 50MB limit for iOS is for using 3G/4G/LTE connections.  You can download any app over WiFi regardless of the size.

Android itself, has a hard 50MB limit for the main .apk file, but we support expansion packs which allow you to have your data in a separate file that Google hosts.

So if you can live with WiFi downloads (and Apple will tell you that you have to use WiFi), then you won’t have to deal with your own hosting. 

Hi Rob,

Thanks for the tips. I’ve read the article on expansion packs for Android few days ago and seems to be a very interesting topic to apply with apps bigger than 50 MB.

Greetings,

Paolo

Hi @pgarza,

The following tutorial might be helpful to you, about “updating content in runtime”:

http://www.coronalabs.com/blog/2013/03/19/updating-mobile-game-content-in-runtime-guest-post/

Sincerely,

Brent Sorrentino

Brent Sorrentino,

Thank you for the quick reply! I’ve read the tutorial and it seems to be a good starting point for what I’m trying to do. But, given the size of the files that will be downloaded (80 to 100 MB) I think it would be a good idea not to host these files on my server due to traffic issues.

I know it may not be related at all wit Corona SDK -and I don’t want to be out of topic- but do you recommend some third party service to serve these files?

Best regards,

Paolo G

Hi Paolo,

Good to hear that you have a potential solution (implementation) underway. I don’t have a specific hosting service to recommend, but I might suggest that you reduce the size of these downloads somewhat, or make them into multiple smaller files… simply in consideration to the overall end-user experience.

Best regards,

Brent

Hi Brent,

Thank you very much for your suggestion, in fact I was working on it during the weekend. So far I’ve managed to reduce the overall size of the app simply by re-optimizing some JPG and PNG files.

I think the best option for me is to have two versions of the app:

  • One for iPhone / iPod Touch which doesn’t include @4x images
  • And other for iPad / iPad Retina (with support for @4x images)

The total size of the file after building the project for iOS of the first version (with no @4x images) is 45 MB! Meaning it is still available for over-the-air downloads, whereas the second option will be the candidate to implement the possible solution (downloading files) from a server.

Best regards,

Paolo

Keep in mind the 50MB limit for iOS is for using 3G/4G/LTE connections.  You can download any app over WiFi regardless of the size.

Android itself, has a hard 50MB limit for the main .apk file, but we support expansion packs which allow you to have your data in a separate file that Google hosts.

So if you can live with WiFi downloads (and Apple will tell you that you have to use WiFi), then you won’t have to deal with your own hosting. 

Hi Rob,

Thanks for the tips. I’ve read the article on expansion packs for Android few days ago and seems to be a very interesting topic to apply with apps bigger than 50 MB.

Greetings,

Paolo

http://thatssopanda.com/corona-sdk-tutorials/using-expansion-files-with-android-and-google-play/#!prettyPhoto has a fantastic tutorial on how to deal with this issue! 

Thanks for the tip, mkelly

Best regards,

Paolo

http://thatssopanda.com/corona-sdk-tutorials/using-expansion-files-with-android-and-google-play/#!prettyPhoto has a fantastic tutorial on how to deal with this issue! 

Thanks for the tip, mkelly

Best regards,

Paolo