We were using dynamic library setup for linking the dependent library. We had some old unused strings and duplicate strings, we cleaned up all the unused strings and duplicate strings, which helped us to reduce the app size. pdf format images across the app, thus helping us in reducing the app size. Also, since 2x and 3x images were bigger than pdf images and pdf with single scale looks good with all the resolutions, we started using. Since we had some old unused images, we cleaned all unused images. We were using 1x, 2x and 3x (.png format) images to support different resolutions and in some places we were using. All this is going to happen behind the scenes and the only thing you or your users will notice is a smaller size of your app. When your user installs the app, they will get one of these smaller executables. So your one executable can actually produce several smaller executables. When your app gets approved it will be recompiled from bitcode to machine language for every supported architecture. Now when you submit your app for review, it will be compiled into an intermediary language and not a machine language. Go to build setting of your target and make sure it’s enabled. We enabled bit code, as it is required for 2 reasons: 1) it is required by AppStore to build different versions of the app, 2) it is required for App thinning. It’s also a way to keep your app under the OTA(Over The Air) size limit. This will decrease the size of the app quite a bit and decrease the download time. Slicing up your app so it’s optimised for the device it’s going to be running on. This brings us to the essence of app thinning. This makes it easy for the users to manage their storage and enjoy apps with fewer restrictions.įor example, on an iPod Touch (1st generation) you’ll only need this: If the same user downloads the same app on another device, then assets required to run on that device will only be installed. Slicing enables mobile app developers to pack assets based on the device for which the app is being downloaded, meaning the user only installs the relevant assets. The App thinning process involves using one or a combination of two processes, known as So, if you built an app that supports iPhone and iPod Touch and you run it on an iPod Touch, you would get all the image assets for all supported resolutions as well as a big binary that’s built for all supported architectures. Meaning, our universal app could run on an iPad and on an iPhone or on an iPod Touch. Before app thinning, when we built an app, we built a universal app. There are many different iOS devices, many different processors, screen sizes, resolutions. Here are the some of the things we have done:Īpp thinning process helps in reducing the size of the app. So how to reduce the app size and launch time? Optimizing the app size and app launch time became the priority problem to be solved. Also, there was negative impact on app launch performance. With this feature velocity, the app size increased and was reaching around 150 MB. At Halodoc, we are very agile in our SDLC and do app release every 2 weeks and we keep adding new features and improvements in every release.
0 Comments
Leave a Reply. |