Often, we come across Android devices that start groaning on processing power even with light weight applications. While Apple has produced devices that run seamlessly, its plan to let iOS 9 run on the low-spec iPhone 4s meant that it had to create a way to make apps on the iOS platform even lighter in size and resource consumption.
And that’s what they’re doing. A new feature announced in WWDC 2015, App Thinning is not just for older devices running on low-power processors. It is composed of three components: Slicing, Bitcode and On-Demand Resources (ODR), and aims to minimise footprint in devices. Not only will it make performance faster, it will also reduce app sizes, thereby providing more usable space for the 8GB and 16GB iPhones and iPads.
For Android devices, the sheer resource requirements of heavy applications as Photoshop and Magisto, or even smaller and simpler apps tend to make a stutter in performance. Apple has already announced that the iOS size has been reduced to 1.3GB from 4.6GB, and with App Thinning, app sizes and processes will be trimmed even further to only include necessary elements, that will further reduce sizes.
Slicing is a technique where only the executable architecture and necessary resources are downloaded to a device. The resources vary as per the device to which the app is being downloaded, thereby creating different ‘variants’ of the same application. Developers will create and upload full versions of their apps to iTunes Connect. While it is being downloaded, the App Store will streamline requirements and create variants based on the device to which it is being downloaded to. Bitcode is a process that will allow apps containing bitcode to be re-optimised by Apple by altering the app’s binary, hence reducing app size and required resources. On-Demand Resources will group app resources as videos and images on Apple server, and will be accessed by the application only when required. For instance, the second level in a game will only be made available once the user moves to that level. Similarly, additional game characters and in-app purchases will also be kept in groups, and will be downloaded to a device only when the user initiates his requirement for it. Not only do these decrease file sizes for download, it also decreases the app footprint on a device, giving a user more space and free up processing power.
With Android devices, an app is downloaded in its entirety, consuming more space and processing resources, making the devices lack speed and causing performance stutter. With Apple practically removing possibilities of sluggish performance, older Apple devices will now be able to run present apps without glitches, a field where Google’s Android platform seriously lacks, even with faster processors and more memory for applications.