Fresh news from Droid zone
Hello, you're reading Infinum Android Sweets, bringing you the latest Android related news straight to your inbox every week.
How KEEP-87 & Typeclasses will change the way we write Kotlin
Once upon a time, there were two gangs in the wild west: Swift and Kotlin. Both being equally strong but in different ways. One day, a guy in the Kotlin gang discovered that the Swift gang was able to carry out operations that the Kotlin guys could only dream of. And so he looked into the sky and said to the Kotlin gang: “My fellow cowboys and cowgirls: the Swift gang has something that we are clearly missing. I have a proposal today. I see a way how, one day, we will be able to do something equally awesome as they do now!”. And so KEEP-87 was born, a proposal for a new Kotlin language feature.
Read More
Articles
Do you have kapt in your build.gradledependencies? Are you using Dagger, Glide, Room? Chances are you can make your project build much faster by enabling incremental annotation processing.
There are many cases when execution context of a code is important. In server-side programs context may carry diagnostic information; in UI applications widgets can only be touched from the specific main thread. This may create a potential problem when your code becomes larger, especially when you decouple data producers and data consumers. Kotlin Flows are designed to enable such modularization, so let us see how they behave with respect to an execution context.
Finally the latest version of Retrofit (2.6.0) has got out. While it was already really easy to use and so much fun, Retrofit is now easy, fun and shorter to write.

The usual practice is to query the database directly from the client, but sometimes it’s better to route through Cloud Functions. But when?

In this post I am going to show you how to solve a common problem that arises when using dynamic feature modules in your project: code defined inside them is inaccessible to your base application during compilation… unless you use reflection 😱.
Libraries
A highly customizable calendar library for Android, powered by RecyclerView.
Gradle plugin that checks if there are dependencies using support library instead of AndroidX. 
Videos/Podcasts
In this episode, Donn talks to Matt Runo about the Flank project. Using Flank you can run your Espresso test suite in parallel on Firebase Test Lab (FTL). This allows you to lower your feedback loop time and increase developer productivity and throughput. You’ll learn all about Flank, how it works and how to get started in this episode.
Class of the week
Utility class for constructing synthetic back stacks for cross-task navigation on Android 3.0 and newer.
Beyond Android
A new algorithm allows video editors to modify talking head videos as if they were editing text – copying, pasting, or adding and deleting words.