Enabling bit code for iOS 9 increases the size of the IPA 3x, is it the size in the application store?

Prior to iOS 9, our IPA size was approximately 6 MB. After archiving and exporting our IPA through Xcode 7, our IPA increased to approximately 17 MB. After further research, we found out that the inclusion of the "bitcode" option in the export settings is what caused a big jump in file size.

My question is this: if we enable this option, will our IPA be 17 MB in the store? Or Apple is doing something with the package to make it about the same size as before (6 MB).

There is not much information about the Bitcode here, and I want to be informed before sending it to the store. 6 MB and 17 MB are enough difference.

+6
source share
1 answer

A bitcode is an intermediate representation of a compiled program. Enabling this option will increase the build size (ipa) on the front panel of the developer.

iOS can work on different processors (i386, x86_64, arm, arm64, etc.), if you want to run the program on any iOS installation, then the program should contain an object code for each platform. When you start the program, the OS reads the "Content Table" and looks for a fragment that matches the OS processor. For example, if you run the operating system on x86_64, then the OS will load the object code for x86_64 into memory and run the program.

Currently, all applications in the AppStore contain object code for arm and arm64 processors. In addition, third-party libraries or frameworks contain object code for i386, x86_64, arm and arm64, so you can use them to test the application on the device and / or simulator.

How does the bitcode work? When you submit the application (including the bitcode), BlackBox Yablokov recompiles it for each supported platform and removes any β€œuseless object code,” so the AppStore has a copy of the application for each processor. When the end user wants to install the application - it installs only the version for a specific processor, without any unused materials.

Bitcode can save up to 50% of disk space for each program.

Refere: http://lowlevelbits.org/bitcode-demystified/

+12
source

All Articles