I guess that some of you might have read an article written by Grzegorz Hudziak about tips on effective App Store Optimization. Today I’m going to discuss a much closer topic for clients who decided to go for Android apps and Android developers like myself: Google Play optimization.
It is well known that the design and development of an application are still not enough for the app to be used by the masses of users and to achieve all the business goals set for it. For this to happen, it is necessary to take care of its proper position and ease of search by users in the Google Play store.
Therefore, and to make this task more comfortable, I have prepared a set of tips that will allow you to take care of Google Play optimization in 2021 correctly. Let’s move on to them!
Android App Bundles
In the second half of 2021, all applications uploaded to Google Play will have to be App Bundles. Android App Bundle is a format of published applications that contain their compiled code and resources. In short, App Bundles are artifacts of applications specially adapted for the devices to which the user downloads them. Old APK artifacts contained resources of all resolutions. However, this type of solution had a negative impact on the size of the application, while the final mobile device was using only sources in its resolution.
Therefore, from the second half of the year, there will be no need to build, sign, and manage multiple APKs to optimize them for different devices. At the same time, their users will receive much smaller and better-optimized downloads. In Android App Bundle, most projects will not require a lot of effort from developers to build application packages that support optimized APK. In case the application code and its resources are organized according to established rules, a developer can build signed Android App Bundles. It can be done through Android Studio or the command line and then sent to Google Play.
The application prepared in such a way will be much lighter, which will directly translate into the application’s performance on a given device, the level of satisfaction, willingness to continue using it by its users, and finally, its high scores in Google Play.
WebP image format
WebP is a graphic format proposed by Google. Its primary goal is to optimize images while maintaining their high quality. What distinguishes WebP from other formats is that it does not cause any loss in the quality of pictures, and at the same time, it is lossy. This means that it supports both types of compression, which is impossible with commonly known JPGs and PNGs. In the context of Google Play optimization, compared to the mentioned formats, WebP is characterized by 25% to 35% the smaller size of images, without any loss of quality visible to the human eye.
The conversion of JPGs and PNGs to WebP is possible using Android Studio. It is a straightforward operation that requires the developer to click on the image that needs to be converted and select “Convert to WebP.” In the context of Google Play optimization, WebP is the best alternative to JPGs and PNGs. This graphic format for Android development allows for maximum optimization to the smallest possible final application size. It is relatively new, but I highly recommend that you put your choice on it, as it may soon, due to its unique capabilities, be the most frequently and standardized image format of all.
Configuration of the application upload key in Google Play
This one, in turn, is a matter of optimizing the automation of application delivery. If Google Play signs an application, Google manages and secures the application signing key and uses it to sign APK files for further distribution. This method allows securing the application in case the key is lost or falls into the wrong hands. Signing the application by Google Play significantly improves its security, handing over the responsibility for holding the signature key to Google.
Worth noting is the fact that the use of app signing by Google Play is optional. It is still possible to upload an APK file and personally manage keys instead of using the application package. Yet, if we keep such a key ourselves, losing it may result in the fact that we will not be able to update any further changes to our application in Google Play. The reason for this is the fact that the application must always be signed with the same key.
Shrinking, obfuscating, and optimizing
Each of the Android application’s originators should ensure that the final project is as light as possible. To achieve this, you should remember to remove unused code and resources systematically. This is possible by running the option “shrinking in your release build,” which additionally allows you to use obfuscation, shortening class names and members, as well as optimization, characterized by a more drastic strategy to reduce the application further.
When developing a project using the Android Gradle plugin 3.4.0 or any newer version, we need to use the R8 compiler to perform compile-time code optimization tasks such as code shrinking, resource shrinking, obfuscation, and optimization.
It detects and removes unused elements from your application and its library, making code shrinking an essential tool for working around the 64k reference limit. If you use only a few APIs, shrinking will recognize the library code that your application is not using and safely remove it while leaving all used and needed items.
It works consistently with code shrinking and removes unused resources from applications in the app’s library dependencies. After removing unused code, it is possible to safely eliminate all resources to which there are no longer references.
The purpose of the obfuscation mentioned above is to shorten the names of classes and members. This, in turn, helps to reduce the size of DEX files used to initialize and run applications developed for Android.
The goal of optimization is to reduce the app’s DEX files further.
Do you want to find out more about Google Play optimization?
What to prepare before your app goes public on Google Play?
In addition to the actions listed and recommended above, it is necessary to prepare some information and files before your app goes public on Google Play. They will help to place the final product in the store correctly.
At first, Google Play will ask to enter the application’s name, by which future users will find it. Next, we will need to type a short description, which will be visible as the first thing the user will see on the application page. Furthermore, we need to prepare an expanded text to include some more information about our application’s characteristics and functionalities.
Next, we move on to the graphic elements that need to be prepared before publication in Google Play. For it to run smoothly, we need to have a logo and some screenshots. When it comes to the latter, it will be necessary to prepare graphics for the phone, tablet, Android TV, Wear OS, or Automotive. Of course, depending on the app’s specifics, there is no need to prepare each of the mentioned elements. For example, take an application in which one of the tasks is to measure the user’s physical activity. In such a case, this application will not be applicable, e.g., for Android TV users.
Tags, categories, and contact
We got to the moment where we will be asked to categorize our product and add tags referring to it. This is extremely important because categories and tags help users search and discover the most suitable applications to solve their problems. Then we will be asked to provide contact information such as website address, e-mail, and phone number.
Preparing all of the above elements is crucial because if we approach this stage correctly, we will not have to return to it several times in the future but only add new information in case of updating our application.
Release train – a structured update process
Apart from the elements related to the release of a new app, it will be necessary to keep the application alive by building a structured update process, called release train. This process maintains features such as staged release and significantly impacts detecting bugs even before they hit the production process. This allows developers to react appropriately and fix all the problems before releasing the application.
Release train works on the principle of a “fail-safe” mechanism, which allows minimizing losses resulting from application errors in production. In this system, application updates are published gradually, up to a certain percentage of users. Thanks to such a mechanism, catching errors in the version that has only reached 2% of users allows us to abandon the version loaded with a specific error and work out a solution that will fix it without exposing all users to the faulty application.
Best optimization tips for Google Play in 2021
To sum up, the optimization of Android applications is a complex process that is undoubtedly worth spending some time before the final publication in Google Play. A significant part of this process is done by developers whose task is to ensure that the application is appropriately developed, tested, and updated while maintaining all the rules and mentioned elements. The clients’ role in Google Play optimization is also crucial because it is their responsibility to provide all the information that will be necessary when publishing an application in the store.