Unexpected iOS App size increase with TestFlight - ios

We are making a game for iOS (under unity 3d) and the IPA file size is around 90 MB. We submitted it for review and at the same time we pushed that same build to Test Flight for Internal Testers. Surprisingly the size on Test Flight is now 400 MB (uncompressed size).
We used test flight internal testing for previous versions of the game, but never got this much size.
Anybody having any clue as how the test flight is taking up the uncompressed file and showing that for the download (400 MB to download)?
Also after we set it for release, which size will the app be for people to download, 90 MB or 400 MB?

The best way to get an idea of the App Store size is to follow the analysis here:
http://forum.unity3d.com/threads/il2cpp-build-size-improvements.322079/
TL;DR
Due to compression of some parts of the binary, a rule of thumb formula for the app size is:
app_store_size = sizeof(.ipa/(zip with exec_binary removed)) + sizeof(codesegment(exec_binary)) + 0.2 * sizeof(datasegment(exec_binary))
This analysis only takes a look at the binary size, so you need to add the size of any assets as well.

Ok I'm not sure how you send your app to TestFlight, but if you are using App Loader or XCode, you could uncheck the field "include bitcode", I'm not sure if it's set by default.
This is how it looks in XCode (while exporting archive):
https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/Art/6_ios_review_dist_profile_2x.png
The thing is, iTunes will create different binaries for your application each optimized for different versions of devices (like different versions of iPad, iPhone etc.). That is why your application on TestFlight has such huge difference in size in comparison to your ipa file.

Check the contents of the IPA. It probably contains debug symbols in the DSYM folder. As il2cpp output is very big, so will be the symbol files. I suppose they are included in the Testflight upload because these are meant for QA purposes, where debug symbols are very helpful.

Related

My App iPA file size is very big compare to android apk file

I am developing one app with ionic angular4 and while I am deploying my app my app size is very big.
My app is very simple informative app and there is only app icon and splash screen are there in my bundle still its goes up to 16-17 MB in iOS iPA while in android same thing will goes up to 3MB only so is there any way to decrese my iPA file size ?
Note : I am using production mode while deploying my app.
While I reverse engineering on iPA file I found below interesting things which may help me out from this issue.
www -> 10.9 (almost 65% of iPA size)
www/build -> 10.0 MB
www/build/vendor.js -> 4.3 MB
www/build/vendor.js.map -> 5 MB
May be we can workout on vendor.js will help us to reduce my App size. But not sure how can we reduce this file size ?
Thanks in Advance!
Almost I lose hope that I can resolve this issue and compromised with IPA file size.
Meanwhile, I developed 4-5 ionic based app with the same issue and in my recent app deploy I fond my IPA file with almost half of the old app size.
So I compare steps of old and new app deployment and I summarised below the solution is best practice.
Build your app in prod mode by using --prod.
Build Command : ionic cordova build ios --prod
Compress all your images with the best resolution and without compromising your image quality. (Use some tool to compress and decrease your image size e.g. ImageCompress).
Remove unwanted files which are no more useful in prod ready code like Sample or dummy JSON, String, PDF, Images.
Following the above steps, My Old APP IPA file size decreased by 60% and now app IPA file size is only 6 MB earlier it was 16 MB.
This will help to reduce app build size.

Big size on iOS App Store

i am using Unity 5.3.1f1 and make game for iOS, after my game is done i build it to XCode. The binary archived from XCode, and generate ~65MB IPA file. Terrifically, after i upload that IPA file to the app store, it becomes larger ~150MB.
I have read this thread:
http://answers.unity3d.com/questions/1149641/very-large-ios-build-size-unity-5.html. But in those case, their IPA file itself is large, and i already disable bitcode
Do you guys have any suggestion?
By assuming you're ok with ~65MB file, i can say there is nothing you can do about it. App store shows install size of your game which is a lot larger than size of compressed IPA file.
For instance, while my game's IPA file size is ~95MB its size on app store appears as ~300MB. In case it helps, please see my earlier question.

iOS App size is outrageous

I have a simple iOS App with 4 Viewcontrollers and few ressources. The Resources include a video (30mb) and images (10mb). I was expecting an app size of max. 50MB but when I archive it goes up to 107MB.
I have read that when I use Swift libraries or pods Xcode includes Swift core into my app. My question is now what should I do? 107MB is unacceptable. Even 50MB is really big but I was fine with. Is there a way to reduce the size and keep the Swift pods included? At this stage I can't even upload it.
UPDATE
Thanks to #GoRoS I have inspected and found out that libswiftCore.dylib 43MB & libswiftFoundation.dylib 5MB are the files that really increase the size. Still its strange. I have the Swift libraries at two different locations in my IPA.
IPA
iphoneos (contains Swift libs)
payload
Frameworks (contains obj-c libs and Swift)
SaifDeen, I would recommend to inspect your IPA file by yourself and you will discover why your app is that big ;)
For that just remember that an IPA is a simple ZIP file:
unzip -lv /path/to/your/app.ipa
Check this reference
Update:
Disabling bitcode will decrease your IPA size. However, as far as I know, even though you have bitcode enabled once your app is in the store Apple makes some optimizations to the app before the user downloads it. The result of that should be a smaller file size.
I was having a similar issue with my app and the only way that I was able to see the final size of the app is not when archiving, is once the app is on Apple servers. The best way to test this is archiving and upload it to iTunes Connect and then installing it with TestFlight.
In my case, at first was around 90 MB and then when installing with TestFlight was only 39 MB.
Hope this helps
bitcode and swift libraries DID NOT have anything to do with my issue.... i basically simply clicked and dragged a folder into my xcode project, which automatically added everything in that folder as 'targets'.
However, these files did not come up when searching through my target dependencies within xcode.... but they DID INDEED show up when unzipping the .ipa as #GoRoS had suggested previously in this thread.
This was a dumb mistake that i probably should have caught sooner.... but that also means someone else will make the same mistake too : )
screen shots...
i clicked and dragged this folder (ios_alpha) from finder into xcode...
and then everything inside that folder was set as a target membership like this....
hope this helps someone!
glhf!

Processed file sizes for Build exceed the 100 MB app file limit

I'm seeing an issue after submission to the app store with Xcode 7 and iOS 9.
My app's always been ~70MB after submission, and the exported IPA of the latest build is sitting at 67MB. After submission to iTunes connect, I'm getting a warning next to the build number saying that the processed file size exceeds 100 MB. I'm not using bitcode and I can't think of anything on my end that would affect the size of the submission now.
Is anyone else experiencing this? Any suggestions?
Thanks
Does the warning match what is displayed on the Build Details page? (click on the build number)
After upload, some processing is performed that can change the size of the final package (https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Appendices/Properties.html#//apple_ref/doc/uid/TP40011225-CH26-SW7), but an increase like that looks like a bug to me.

how can i reduce the ipa file size for ios?

Hi I want to make my build size to be reduced. When I make a build the size increases to more than 700MB due to some heavy sdks. Can any one guide me how to reduce the sdk size to less the 100 MB?
You should not use the SDKs directly in the app rather you should use it via creating Reference and add them from Build Phases as Library..
You should do it the way Google SDK is added to the iOS app see here, the SDK is around 150 MB but adding the way defined in the link doesn't increase the IPA size..
Hope it helps..
Edit:
I think your problem is related to this TTS: Ivona SDK for iOS - impelentation in Project increases the app to 200MB+

Resources