Just recently I launched an app in the App Store (ya, first one). My dropped when I saw the file size to be 35+ MB. I looked at some other unity made apps and noticed that there file size is < 15MB.
What the hell did they do?!
I optimized everything I could think of. I am using JS, and added #pragma strict to all the files. I have only 3 textures - 2 are used by the UIToolkit, the other is for all my 3d models/objects in the game. I am using arm6 and arm7 (what the hell is the difference between the two - tell me like you are telling a 10 year old, haha, I am new to this)… I really don’t know what else to share.
What are some of your suggestions and recommendations? I really, REALLY, want to get this under 20MB, at least.
I would advise not obsessing so much about 20MB. It’s not a big deal in most cases. In fact there was an article a while ago about how being above the over-the-air limit actually seemed to give apps a slight edge on average, although that was back when the limit was 10MB.
That adds significantly to the size, since you’re including two separate executables.
I think being under 20MB is pretty handy for a free app, but I wouldn’t stress about it. I’ve managed to sneak a few apps under 20MB in iOS Basic by only building for one architecture… and not having many assets
Basically, by targeting both armv6 and armv7 you are building the app twice, so that’s why it’s 35mb. If you are targeting older devices (which have armv6) you can set it to just build for that, and newer devices will (with a slight performance hit) still be able to run your app. If you don’t care about older devices, just build for armv7. It’s basically the chip architecture, v7 is newer
The file size isn’t overly important mind, most (about 70% in my experience, but other peoples will be different) people download from an ipod touch, which means they’re on wi-fi anyway…
Yes, like the last few comments have said it’s arm6 + arm7 that’s REALLY killing you. I use iOS basic and Internation Food Wars is 18 mb. I targetted just arm6 for the widest audience since it’s a pretty basic game. I targetted both in Cubenaut because I didn’t know better and it is 38 mb. I’m working on an update now that will target only one architecture.
I think app size IS important, I’ve even been told I need to reduce my app size (Cubenaut)
You should target only one architecture, I don’t know why Universal is the default build. Don’t be afraid to say “This will only run the way I intend it on arm7, so I’m limiting it to arm7”, but if it plays ok on an ipod 2g then go arm6 to target everyone (Yes, that includes arm7 devices.)