How to reduce my ipa build size? - ios

I have exported IPA build from Xcode 9.1 and my file size is 168 MB.
I have enabled and disabled bit code feature from build options in Xcode 9.1, But there is no change in IPA build file size it remains same as 168 MB. I am weird about this.
I will appreciate if anyone can help with this.
I really don't understand the concept of App Thinning.

I guess code size is your smallest problem, therefor you don't see much of a change. If you want to have a smaller .ipa, you need to reduce your media files.
"App thinning" is something that happens on Apple site: Simply speaking, if a user downloads your app on a say iPhone, apple kicks out all stuff that does not match to your device, e.g. images for different resolutions than your phone. Therefore, your .ipa still contains all the data, but just the download for the end user is smaller.

Related

Why is the size of the app in the AppStore half the size of the build in Xcode?

Developing an application, release branch, when published in the App Store weighs 100MB after installation. The same branch if you build it locally from Xcode weighs 200MB. Sometimes a similar result is observed in TestFlight. Question, are there any specifics of building an application in the App Store, which results in a difference of half the weight?
I am a tester, and I do not understand the details, but it is important to solve the problem, please advise me in what direction to look for a solution.
Googled and talked to the developer. I need a hint in which direction to think.
2 reasons:
Debug builds contains more information than release builds.
In release mode, usually we upload universal IPA to the appstore. Which will include data for all variants (Different iPhones, iPad, mac). You will only download thinned version of the app which will be less in space.
Read more at: Reducing your app’s size

Minimize iOS App Size [duplicate]

This question already has answers here:
App size double on archiving iphone
(3 answers)
Closed 5 years ago.
After archiving the build, the build size is almost doubled that of the build generated by dragging and dropping .app to iTunes. Why the build size is increased while archiving. Appreciate the suggestions.TY
The archive includes your debugging symbols .dsym file. Also see this duplicate post and answer.
In addition: assets are the issue in our case. You can in most cases remove meta data from your assets, it's a few kb per assets but with big quantities it adds up. Make sure to save assets for web, photoshop does this better than e.g Sketch, and there are tools like ImageOptim.
I have had that very same question. To be honest I am not sure. It might have something to do with the version for each device or the assets. Do not worry about the size. Once the app gets put onto the App Store the file size will change. One of my apps was 45mb on my simulator and once it was released onto the App Store the file size went down to 21mb. I honestly would not worry about file size unless you have a lot of pictures or videos.
The file size will decrease a lot once it is on the App Store. But if you are really concerned about the app size, there is a way to compress some of the code.
Click here for stackoverflow question that's shows how to do that
Congratulations on your app!
The archived version of the app includes all the assets and compiled code. If you are using Bitcode the size will be large as it will include all the slices of the app. However the downloaded size will differ from the archive size.
This question from Apple support pages also explains how you can determine more accurate file sizes for what the app will actually equal on the App Store.
https://developer.apple.com/library/content/qa/qa1795/_index.html
You might want to have a look into App Thinning to ensure you optimise the size of your app.
https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html
or here
http://www.imore.com/app-thinning-ios-9-explained
Don't worry about the size. As soon as you upload it to the app store, bitcode will do it work which will make the app a lot smaller.

Archived IPA size for Appstore is larger then Adhoc

I am developing app in swift 2 in xcode 7.3. I used too small images and project is too short it contains only one framework googleMobileAds.framework. My total size of project folder is only 36MB where 31MB is only for googleMobileAds.framework.
Now I want to publish my app on store. but it creates too large ipa with size 31 MB for app store deployment. When i tried to export ipa for adhoc exported IPA file size with 8MB. I searched a lot on google and i got to know that disabling of BITCODE will help I disabled but nothing worked its still 31 MB for App Store Deployement. please tell me how to reduce app size because app is too small thats why I want to reduce app size.
Thanks in advance. :)
App store distribution submissions are uncompressed (and App Store downloads are less compressible than development ipa files), so this is normal and there is nothing you can do (except remove lots of code or data from your app).

How to reduce app size in iOS?

I know it has been asked many times, but every answer suggests using compressed images or linking to images from the web instead of the resource bundle.
In my app there is only 1.5 MB of images, but still the app has a size of 20.9 MB.
The other files in my app are the following:
2 frameworks (CoreLocation, CoreBluetooth)
2 pods (Fabric, Crashlytics)
8 xib
2 fonts (254KB)
And some Swift and obj-c files
Could anyone help me optimize the size of my app?
I am wondering why my app is so large if there is only 1.5 MB of images and 254KB of fonts? I have some apps on my iPhone which have the same functionality as my app and they only take up 520 KB and 1.6 MB. Does anyone know how the developers of those apps achieved that?
The Swift runtime is included with every app that is currently using Swift and inflates the app size.
Apple doesn't promise code compatibility - but runtime compatibility is promised.
In order to do that the Swift runtime libraries of your compiled code is included with the app. That takes up some space :)
The App Store size might be smaller than Xcode reports. If you upload your build to TestFlight, TestFlight will report a much smaller size (but then tell you the regular App Store version might be larger). With app thinning and bitcode the size of the binary delivered to your user's phones will be smaller than the "full" app size.
Swift's overhead should go away once Swift 5 (https://github.com/apple/swift-evolution) gains ABI compatibility.
Fabric/Crashlytics add a few MB alone. If you build an Archive, then in Finder right-click on the the app and Show Package Contents. From there you can sort by file size and see the biggest culprits.

How to reduce the itunes app size?

When submitting an app to Apple, i noticed that even though the App bundle is 60 MB, the actual app that shows up on itunes is 54 MB. However, when making the Ad Hoc build, the ipa is only 30 MB.
My understanding is that this is due to DRM that Apple has: https://developer.apple.com/library/ios/qa/qa1795/_index.html
However, is there a better way to bypass this DRM that Apple puts?
Apple just came up with a solution where if you add all your resources (images, videos, etc) to the so called Assets catalog file AND configure each file according to the device type being used THEN you can dramatically reduce app size.
Think about it! You have 3 copies of every image: img.png img#2x.png and img#3x.png
Then why would you need to have the non-retina set of images on a retina device?
And this answers why you see lower app size when you build. xCode does this automatically, but you can fine tune in assets catalog. Here is how:
https://developer.apple.com/library/mac/recipes/xcode_help-image_catalog-1.0/chapters/CustomizingImageSetsforSizeClasses.html#//apple_ref/doc/uid/TP40013303-CH10-SW1
Oh yeah, not only app size reduces! Apple made seamless integration to make the AppStore downloadable app be smaller. By making a custom build for every kind of device. Just use the Assets :)

Resources