Issue #418

June 14th, 2020

Articles & Tutorials

link image   Exploring Dagger Hilt: An Introduction (

When it comes to dependency injection on Android, we’ve seen many different solutions that have arisen in the community. In this post, Joe Birch focuses on these Dependency Injection solutions, including the new Dagger Hilt from Google.

Kotlin Symbol Processing: Early Thoughts (

Google announced Kotlin Symbol Processing (KSP) today, a new compiler-plugin-based API for annotation processing in Kotlin. Zac Sweers shares his first impressions.

link image   Achieve 99% crash-free sessions with Instabug SDK (

Quickly identify and resolve your app crashes 4x faster with Instabug. Know which line of code caused the crash along with network logs and detailed repro steps. 25,000+ developers trust and rank Instabug as the number one SDK for bug and crash reporting. Find out why and see more features by trying out Instabug for free here.

What’s new in Jetpack (

Here’s a round up of the latest updates in Jetpack by Florina Muntenescu.

link image   Place a sponsored post & reach over 66k Android devs (

Place a job post or sponsored post in our Android Weekly newsletter and reach more than 66k subscribers around the world!

Using Fakes To Test Reactive Flows (

Adam McNeilly writes how unlike mocks, fake implementations give us full control of our dependencies in unit tests, allowing us to accurately and thoroughly test reactive flows.

A Great Way to do Presenters (

The Cash App Android app uses presenters because they’re easy to write, easy to review and result in boring code that just works. In this post, Benoît Quenaudon shows how to use presenters with or without RxJava.

MotionLayout: Visibility (

MotionLayout is a wonderful tool for creating complex layout animations. In this post, Mark Allison looks at some oddities concerning the visibility of views within the layout.

Dagger Hilt: Basics, Architecture, Concerns (

Dagger Hilt is a new library from Google which constitutes a thin wrapper around Dagger 2 dependency injection framework. Vasiliy Zukanov examines the details of how to use it, and if in fact, you should.

Network call interface in Kotlin (

How do I define my network call interfaces in Kotlin? Bevan Steele shows the best way to make network calls using Kotlin Coroutines.

Kotlin and Exceptions (

What are Kotlin Exceptions and how should you use them? Kotlin lead Roman Elizarov takes a closer look.

Draggable bottom Navigation Drawer (

Francisco Franco shows how to create a draggable bottom navigation drawer.

Replacing Mocks (

As Ryan Harter has become better at testing, and programming in general, he's come to use Mock objects less and less, even removing them from existing projects and using Fakes instead.

How to break your Android App with proguard / R8 (

Paul Woitaschek recently updated the android gradle plugin to 4.0.0, and noticed that network calls were hanging. He writes about how he tracked it down, and which Proguard rule was causing the issue.

Fueled Reactive apps with Asynchronous Flow — Part 3 (

Raul Hernandez Lopez prepares to migrate an RxJava + Java application to Kotlin + Coroutines/Flows. In this third part, he elaborates on the details of the data layer.

Fueled Reactive apps with Asynchronous Flow — Part 2 (

Raul Hernandez Lopez prepares to migrate an RxJava + Java application to Kotlin + Coroutines/Flows. In this second part, he details asynchronous communication with streams.

Fueled Reactive apps with Asynchronous Flow — Part 1 (

Raul Hernandez Lopez prepares to migrate an RxJava + Java application to Kotlin + Coroutines/Flows. In this first part, he writes about the use case & migration strategy.


Libraries & Code

Compose Academy (

Snippets and guides for Jetpack Compose on the Android platform

sample-materials-shop (

Romain Guy's sample app for Jetpack Compose Developer Preview 2

StateMachine (

A Kotlin DSL for finite state machine.



link image   What’s new in Android gaming (

Google has numerous updates on all the new features announced in March of this year, at the Google for Games Developer Summit.

11 Weeks of Android (

Over 11 weeks, we'll be diving deeper into different areas of Android with new developer content. Each week brings a new focus, everything from UI to Android Jetpack to Machine Learning.

Introducing the new Google Play Console beta (

Play Console has been redesigned from the ground up to ensure it continues to help you grow your business on Google Play for years to come. Try the beta today!

Unwrapping the Android 11 Beta, plus more developer updates (

Google's unwrapping the Beta release for Android 11 as well as the latest updates for developers from Kotlin coroutines, to progress on the Jetpack Compose toolkit, to faster builds in Android Studio, even a refreshed experience for the Play Console.

Performance insights for Games (

As part of Google's work to help you deliver better game experiences to more Android users, they've introduced Android Performance Tuner - a new library in the Android Game SDK that unlocks game performance insights in Android Vitals.

Meet Google Play Billing Library Version 3 (

Google is launching Billing Library version 3. Now available, this newest version includes new ways users can pay, subscription promotion capabilities, purchase attribution for games, and improvements to purchase reliability and security

Distribution data for Android (

This web app pulls most recent android distribution data from Android Studio, while making historical data available as well.


Videos & Podcasts

link image   Android Makers 2020 (

The playlist for Virtual Android Makes 2020, including all presentations.

All about Android 11 - Playlist (

The first Beta of Android 11 is out, with a focus on People, Controls, and Privacy. Find out more about the release as well as developments in other libraries and tools, including Jetpack, Android Studio, Kotlin, the Google Play Console Beta, and Jetpack Compose Developer Preview 2.

Android Panel Discussion (

A virtual panel discussion with expert Android engineers Jake Wharton, Sha Sha Chu, Donn Felker, and Alex Chioua.