At Android Dev Summit 2019 today in Sunnyvale, Google made a slew of developer announcements for its mobile operating system. The company released expanded APIs for Android Jetpack, Jetpack Compose in developer preview, and Android Studio 4.0 Canary, the latest version of its integrated development environment (IDE).
Think of Android Jetpack as the successor to Support Library, a set of components that makes it easier to leverage new Android features while maintaining backwards compatibility. When Google launched Jetpack last year at I/O 2018, Android product manager Stephanie Cuthbertson described it as “the next generation of Android APIs designed to accelerate app development.”
At I/O 2019 in May, Cuthbertson shared that 80% of the top 1,000 apps in the Play store are using Jetpack. Today, she revealed that over 84% of the top 10,000 Play Store apps have used Jetpack.
And now, Android Jetpack is getting more features:
- Benchmarking is now available as a release candidate. This library makes it easier to measure the performance of your app.
- Viewbinding is an easier way to access Views from your code. Available now, it is a type-safe solution with minimal build-time impact, no more
findViewById(), no more annotation processors.
- CameraX simplifies the development experience and lets you focus on your app instead by addressing the differences between the many devices in the Android ecosystem. Samsung, Xiaomi, Oppo, Motorola, LG are already unifying behind CameraX, which will hit beta in December.
These are all iterative updates — the bigger improvements will likely have to wait until I/O 2020. But Google isn’t standing still until then.
Jetpack Compose and Android Studio
Also at I/O 2019, Google open-sourced an early preview of Jetpack Compose. The new unbundled toolkit is meant to simplify UI development by combining a reactive programming model with Kotlin.
Today, Google released the Jetpack Compose Developer Preview. You can get it by simply downloading the latest Canary build of Android Studio. Speaking of which, Google today also released Android Studio 4.0 Canary. The IDE includes live preview, code completion, a full sample of a Compose app, Java 8 library desugaring, motion editor, full support for KTS files, and Kotlin live templates.
Because Compose is being developed completely in AOSP, Cuthbertson says there is a continuous feedback loop. This has lead to “many API improvements.” She added that Jetpack Compose will hit beta next year.
Modern Android development
Additionally, Cuthbertson spent some time talking about “modern Android development” — a push by Google to give developers recommendations on how to build their apps. She also provided an update on reducing access to sensitive data and making Google Play safer for children and families. Google recently restricted SMS/Call log permissions to only apps that need them as part of core functionality. As a result, 98% fewer apps access this sensitive data.
While Google is committed to C++, Java, and Kotlin for Android development, if you ask for a recommendation, the team will say Kotlin. Nearly 60% of the top 1,000 Android apps now use Kotlin. Google is working with JetBrains to bring faster Kotlin compile speeds, incremental annotation processing with KAPT, less IDE typing latency, more lint checks, and new optimizations in R8 that are aware of Kotlin-specific bytecode patterns. Today, Google released full IDE support for Kotlin build scripts. Furthermore, Google also launched an Advanced Android course with Kotlin on Udacity and an Associate Android Developer Certification in Kotlin.
In May 2018, Google introduced the Android App Bundle as a new publishing format designed to reduce app sizes. Cuthbertson shared today that over 250,000 Android App Bundles are now in production, covering 25% of all active installs. Google is now making app bundles and dynamic delivery much easier to test. Internal app sharing lets you share test builds of your app bundle as easily as you share APKs. You can thus grant anyone on your team access to upload artifacts without giving them Play Console access. Additionally, you can now get download links for old versions of your app, whether they’re app bundles or APKs. And finally, offline testing of dynamic delivery with the fake split install manager is now available.