Issue #427

August 16th, 2020

Articles & Tutorials

link image   Smile, it’s CameraX! [preview and capture] (

Magda Miu continues her series on CameraX, demonstrating how its use-case driven approach makes things like preview and capture relatively easy to implement.

Disabling Jetifier (

Jetifier helps developers use libraries that reference older Android support libraries and update them to newer Jetpack references. Adam Bennett shows how to track down those libraries using a handy Gradle plugin.

link image   Test your app on hundreds of real Android devices (

Seamlessly access real physical devices in the cloud with full support for gestures, orientation, and more. Test on the latest Android and iOS devices your customers use, all in a highly responsive environment. Start your free trial today.

Composite ViewModel (

No matter what patterns you follow in your apps, you can end up with monolithic implementations that are hard to follow. Sergej Shafarenka shows an example of how a larger ViewModel can be broken down into smaller parts.

link image   Deploy Android Chat In Hours With Stream (

Learn how easy it is to use Stream's Android Java & Kotlin chat SDK. Build real-time chat for Android in hours, not months. Start a free trial now and try out Stream's chat API and SDK Components. See why Stream powers the feeds and chat for over 500 million end-users.

A glowing progress ring with rounded ends for Android (

Andréas Saudemont writes about how he created a custom Android view that draws a glowing progress ring with rounded ends.

How-to Github Actions: Building your Android App (

In this blog-post series, Nicola Corti walks you through how to set up your CI with Github Actions.

Introducing scrcast (

Brandon McAnsh announces scrcast - an open-source Kotlin-first configure and go screen recording library for Android.

All about Hilt (

This in-depth article by Hari Sudhan covers Hilt, a dependency injection framework for Android that is built on top of Dagger 2

Hilt Migration Guide (

Suleyman Fatih Giris demonstrates a Hilt migration of a sample app that uses dagger-android for DI.

Android TV: Best practices for engaging Apps (

Paul Lammertsma covers how to customize your app’s look and feel and integrate with Android TV features.

Making Custom Views on Android Accessible (

In this post, Ataul Munim adds support for Google TalkBack (and other Android accessibility services) to a MovieRatings custom view.

SSID Connector - Callback Flow (

This start of a three-part series by Mark Allison covers his approach and best practices for connecting to a specific WiFi SSID on modern and legacy devices using modern Android development techniques.

An on device, AI powered, musical experience built with TensorFlow (

Sounds of India is a unique and fun interactive musical experience. The entire process of creating this experience took only 12 weeks, showing how rapidly developers can take models from research to production at scale using the TensorFlow Ecosystem.

Turning a Camera Feed into a Solved Sudoku (

This post by Gergely Hegedüs is about the process of getting to the end result of a simple application that overlays a sudoku's solution into the camera image of the puzzle, using Kotlin, CameraX, and MLKit.

Exploring the Google Play In-App Review API (

In this post, Joe Birch dives into exactly what the Google Play In-App Review API is, how it works and how we can make use of it in our android applications. Congratulations on your 200th post Joe!

Support for Kotlin SAM in release 1.4 (

Jorge Castillo writes about Kotlin SAM support for Java interoperability and also for Kotlin interfaces starting on release 1.4.

Android Vitals - Why did my process start? (

Py continues the blog series focused on stability and performance monitoring of Android apps in production. Here he's refining the code to determine cold starts of an app.


Place a sponsored post

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



Senior Android Developer (Anywhere)

At Doist, our mission is to inspire the workplace of the future by creating simple yet powerful productivity tools that promote a more fulfilling way to work and live. We're looking for a passionate Android developer who is excited to continue improving Todoist and Twist.

Android Engineer (Java/Kotlin) (Berlin)

We're looking for an Android Engineer (Java/Kotlin) in Berlin who will join our international tech team as soon as possible in creating one of the fastest growing companies in the heating market.

Android Mobile Application Developer (Remote )

The Mobile Developer position is responsible for writing application code to contribute to the full lifecycle of development from concept to post-production support and maintenance of mobile applications and services. • Develop application code according to requirements and assigned tasks.


Libraries & Code

scrcast (

Drop-in Android Screen Recording Library



link image   New ways to reach more drivers on Android for cars (

Google continues to see strong momentum and adoption of both Android Auto and Android Automotive OS and share new improvements that provide app developers the opportunity to reach more users in the car.

6 New ways to engage with users on Android TV (

Google announced 6 new ways that are coming soon to help you continue to improve engagement and commerce on the TV.

What’s happening in Wear OS by Google (

Google shares some areas of investment focusing on the WearOS fundamentals, bringing even more helpful experiences to more watches, and giving users more choice in a device ecosystem.


Videos & Podcasts

link image   Frictionless subscriptions (

Learn how to take the friction out of purchasing a subscription, creating and linking an account, and automatically signing in on Android TV.

The User Experience of Compose and Flow (

Hadi chats with Vladimir about Compose from a user perspective. They go through the history of UI solutions that have been available for Android, and see how and where Compose fits in.

Understanding the Material Design type system (

In this tutorial, learn how typography works in Material Design, and create a custom type system with expressive headline styles, readable body styles, and everything in between.