Google I/O 2019 takeaways

May 29, 2019 · 6 min read

Chapter II: Build & Release

Image for post
Image for post

We talked about the Testing related takeaways from this year’s I/O event in the previous blog. We ended with a promise to follow up with Build and Release related announcements, and here we are. We try to portray a succinct summary of these talks in this chapter. Let’s see them topic by topic :

Customisable delivery and easy sharing of test builds

A plethora of new features were announced with respect to app bundles :

  1. In-app updates: 2 flavours for in-app updates were announced. Immediate and Flexible. With Immediate, the user is given a notification for a new update and on acceptance, Google Play manages the UX and the flow. With Flexible, once the user accepts for the update, the control is returned back to the application and Play notifies the application on update completion. The app has full control over the flow.

Google Play

Apart from the new features mentioned above, a few other enhancements to Google Play have been made.

  1. In addition to efficiency and modularity, the Android App Bundle also now offers increased security with the launch of app signing key upgrade for new installs. With this feature, you can upgrade the cryptographic strength of your signing key for new installs and their updates on Google Play. Many developers sign their apps with keys generated a long time ago, and this new feature is the only backwards-compatible way to increase their strength.

Features to help your business grow

  1. There would be custom listing by install state under 3 categories — Not installed, Uninstalled, Currently installed. You can target custom messages according to these categories.

Tools to optimise app size and boost installs

  1. Improved uninstall wizard: Smart suggestions based on app size and usage will be provided.

Improving app performance by benchmarking

Jetpack Benchmark Library was introduced. This is our personal favourite. It is currently in alpha stage. It measures code performance and is integrated with Android Studio. It supports Kotlin as well as Java. With Studio 3.5, you can create benchmark modules in your project.

There’s a Gradle plugin for the same. The plugin helps you to pull benchmark reports when you run gradlew. Along with that, there are some Gradle tasks added for CPU clock stability. The test runner has some baked-in tricks to stabilise benchmarks.

There is addition for proguard rules as well. The template supplies pre-configured proguard rules. The idea is to mimic production behaviour and that’s why they bundle these rules along. Keeping that in mind, they are providing detailed logs with apt warnings. Say you run in debug mode. This defeats the purpose of benchmarking as it is expected to work slow in debug mode. Hence the flashy warning in logs which running benchmarking.

The benchmarking module is written to account for ramp-up period as well. In short, benchmark spins loop for minimum 250ms and starts measuring only once the performance of the app stabilises.

The module also has an API to lower the max CPU clock to prevent CPU throttling to prevent inconsistencies due to device OS functioning.

You can watch the complete talk on how to get started with your first benchmark test.

Improving build time execution with Gradle

There were a couple of talks on how to improve your android builds with Gradle. I recommend you to watch the talks for deeper understanding. Here, let’s see the highlights of the talks.

  1. R classes will directly be compiled to class file now. The intermediate Java file will not be generated.

Well, this is it. We have tried to cover all test and release related talks. The summary just paints a brief picture and we recommend that you check out each of these talks individually for deeper analysis. You can check out our previous blog to see the Test related announcements.

Despite our best efforts, we might have missed out on some points here and there(the chances of that happening is 1 in 14,000,605). If we did hit that possibility AND you happen to notice it (that would indeed be the mother of all possibilities), let us know in the comments below and we would include the same in the blog.


the official quiQUA blog

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store