Why do app file sizes jump up by nearly 20MB?
Hey guys, I had a client question why the end file size was so large when the project itself was so small so I made this little test and was shocked to find the results!
I have made a sample project with NO images in at all, just 1 rotating actor. The project itself is just 35KB. When published through the server, this 35KB manages to turn into a whopping 18.8MB. That is ridiculously high. I even checked my loading image and this is just 363KB so whats with the bloating app size @BlackCloakGS
This now means that no matter what you do, your apple app will always be a minimum of 18MB which just isnt a good start for any developer to build on.
The same happens (but slightly less) with an Android build. The same 35KB project publishes at 6.8MB.
Below are the sample project and the 2 exported .app and .apk files
Thoughts anybody else?
Comments
@gingagaming In your .app you have around 2.4 MB images (splash-screen in different sizes + icons) and a 13.9 MB executable. The reason there is such a difference between an .app and .apk is that in the IOS version the executable file contains both a 32-bit and a 64-bit executable (as per Apple's requirements) where as you don't have that (requirement) for Android so the .apk executable will be smaller.
I haven't checked the latest updates on mac, but didn't they recently or about to fix the memory build up problem when running a game? Perhaps this is part of the mechanism to prevent memory build up on the device, which the cost being a bigger file size.
Which makes me think, perhaps for those who only use 1 level for everything, maybe there should be a check mark for "memory optimization" which is what would enable it.
Or it might just be related to the new x4 images required for the new higher end apple devices? I've only dwelved in android related publishing, I'll be checking out iOS when they get that server side feature up that streamlines the process.
So that explains the size diffence between the two types but doesnt explain why the output file is so large? I get the app icon and loading screens and whilst I have kept the original file relatively low the app icon and loading screen at input only take up 1.7MB (and thats only because GS make you have 4 loading screens rather than 1 single one and use overscan). But thats still missing the point. I have uploaded only a loading screen and an app icon. The file is still nearly 20MB. I have previous games will FULL art that was less than this made with GameSalad.
Here is an example, Here is a full game with art made with GameSalad:
https://itunes.apple.com/gb/app/bash-up!/id941579543?mt=8
The whole file is still only 14.3MB Thats 5MB lower than this sample project with no art no rules, no nothing...
Something has changed and this ones not for the better! I personally think that 20MB for a shell is a lot of memory took up!
GAMESALAD DEV FOR HIRE! - www.gingagaming.com
We dont get to see the images anymore since GS tightened up security on the files and access to the .prog file (which was for the good of us all!) But this could explain it. However there are no images in this project, only the loading image and app icon which does only equate to 2.4MB of the size when published.
GAMESALAD DEV FOR HIRE! - www.gingagaming.com
Your previous game that you are referring to was published when xcode only built one executable which was 32-bit. All xcode builds now include both a 32-bit and a 64-bit executable. The builds will not become smaller (maybe a little bit once 32-bit is dropped completely but not until then).
You are correct. This was indeed published pre 64-bit.
Thanks for your input on this JSP.
GAMESALAD DEV FOR HIRE! - www.gingagaming.com
@gingagaming you're welcome
At WWDC Apple introduced a system where games and apps can be set up so that the end user only downloads the things they need for their specific device - only the art assets appropriate, only the 32 bit or 64 bit executable etc.
Hopefully it's something GS can incorporate. The published sizes would still be big, as that's pretty unavoidable, but what the end user actually downloads would be much, much smaller.
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support
Yes, that's interesting. Also worth mentioning is that it requires IOS9 (if I remember correctly).
Hey, @gingagaming I noticed the same thing about a month or two ago and placed a bug report. You can view it HERE
Big Smile Games Play Happy!
Check out our other GameSalad exclusives.
Any news from the GS team about this @ForumNinja ?
I think from what @JSproject has explained, there is a 13.9MB exe that is causing the major bulk. This exe (from my understanding) is a "wrapper" that makes the .proj file we create in creator work on a mobile device. its recently (in the last few months) jumped up by 5MB as apples requirements have changed and now require both 64 and 32-bit builds. The extra 5MB is this addition.
In short, we are now stuck with a minImum 20MB min project if publishing to Apple.
GAMESALAD DEV FOR HIRE! - www.gingagaming.com
I think we can shave a few MB off of the executables as well. We'll see what we can do about that.
@CodeWizard
Not really related to this topic, but what about the minimum supported OS version? (on the GS publishing page) Right now it´s 6.0, and it can´t be changed.
Mental Donkey Games
Website - Facebook - Twitter
Less than 1.5% of iOS device owners are running version 5 or lower. The vast majority of those are using an iPad.
Even version 6 is used by less than 4% of iOS device owners.
I'm sure supporting version 5 would be far, far, far more effort than it's worth.
Unless you want to demand a higher iOS version, of course. But since GameSalad games will run on anything from 6.0 and up, it seems a bit pointless.
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support
This is great news @CodeWizard
GAMESALAD DEV FOR HIRE! - www.gingagaming.com
@Armelline
I was thinking of a higher OS version. (and dropping iPhone 4 support)
But thanks for the info. I didn´t know that version 6.0 (and below) is used in so small amount of devices.
Mental Donkey Games
Website - Facebook - Twitter
iPhone 4S is supported right up to iOS 9, so you could theoretically drop iPhone 4 but not the device size.
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support
This is something that I would love to be looked and fixed.