Issue #416

May 31st, 2020

Articles & Tutorials

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.

link image   Build and operate Android apps faster with Bitrise (

From Android-specific solutions to full cross-platform support, we aim to streamline your development process through one, easy-to-use service. Whether you work in Kotlin, React Native, or any other framework, Bitrise is the way to go. Sign up for a free trial today!

link image   Designing and Working with Single View States on Android (

In this article, Márton Braun looks at some basic patterns you might end up using if you decide that the state object should have a one-to-one mapping to the UI state in your view architecture.

Easy Android Scopes (

Ryan Harter takes a look at some of the existing approaches that allow us to create presenters that will live in the context of our views and then shares an alternate approach that he's used to ensure presenters are properly bound to their view’s lifecycle.

Jetpack ViewModel and string resources (

Bevan Steele shares a couple of ways to make ViewModels as Android-independent as possible.

Modern Security in Android (

This six-part post by Dinorah Tovar compiles her lastest talk about “Modern Security for Android Developers”.

May 2020: The state of Kotlin Scripting (

Lately, Martin Bonnin started replacing Bash and Python scripts with Kotlin Scripts and he's loving Kotlin even more!

Make it work with foldable displays (

In this article, Malik Motani talks about things that a developer needs to keep in mind while developing an app for foldable devices

Material Shape: Cutting Corners (

Mark Allison continues his series on Material 2.0 themes, this time looking at how we can create custom corner and edge treatments.

Hiding Text in Kotlin – How many ways? (

At some point, you may want to show that you know a text value, but not show the value itself. Paul Blundell explores some ways to implement this in Kotlin.

A hidden Kotlin gem: Deprecations with ReplaceWith (

Marc Reichelt describes how in Kotlin & IntelliJ/Android Studio, Deprecations with ReplaceWith can give you a pleasant developer experience.

Resource configuration for Microsoft Surface Duo (

Enhancing your app for dual-screen devices is easily done by following this three-step process. Here, Cesar provides some additional useful tips for embracing new features so your app can take full advantage of both screens when it is spanned.

Refactoring Themes with Style (

Theme overlays are used to override values from your theme. Ataul Munim highlights three cases where he's using them to be helpful.

Kotlin Collection Functions Cheat Sheet (

Kotlin provides a rich utility set of functions for its collections. It is hard to scan through 200 of them alphabetically to find which is relevant. Hence Elye has made a cheat sheet for the functions, grouping them based on its functionality.

Stop using Gradle buildSrc. Use composite builds instead (

You are invalidating the whole project for any change within buildSrc, usually without there being a valid reason. Josef Raska shows how we can keep the sweetness of Kotlin whilst avoiding this.

Firebase Predictions (

A lot of Android developers have never heard of Firebase Predictions or never used it, and this article will serve as a quick introduction. Vladimir Jovanovic also explores some of the retention and monetization strategies that this tool makes possible.


Place a sponsored post

link image   Place a sponsored post on an Android Weekly issue (

Reach more than 66k subscribers around the world with your Android development product or service, or post a job post to hire excellent Android developers.


Libraries & Code

supabase (

Supabase, an open-source alternative to Firebase Realtime Database, adds realtime and RESTful APIs to your existing PostgreSQL database without a single line of code.



Android Studio 4.0 (

Google announces the release of Android Studio 4.0

Announcing Firebase Live (

Firebase Live is a new 5-part weekly web series for developers consisting of talks, tips, and technical tutorials to help you increase productivity and collaboration among your team.

link image   Duolingo migrates to Kotlin (

Duolingo completes migration to Kotlin and reduces its line count by an average of 30%.


Videos & Podcasts

What's new in Android Studio 4.0 (

The Android Studio 4.0 release introduces a new Motion Editor, Build Speed window, Live Layout inspector, Multi Preview for your layouts, support for Kotlin DSL script files, and a Smart editor for R8 rules.

link image   Kotlin Object (

In this episode, we go over the differences between implementing a Singleton in Java versus Kotlin, how you can create Singletons in Kotlin without using the static keyword, and what’s happening under the hood when using object

Functional Kotlin w/ Higher Order Functions & Kotlin Standard Library (

Nate Ebel teaches how to write and use Kotlin's higher-order functions. You'll then learn about many useful functions from the Kotlin Standard Library such as filter(), map(), filterNotNull(), associate(), and more.

Jetpack Compose with Leland Richardson (

Jetpack Compose is the new UI toolkit from Google that is Kotlin First. It takes advantage of Kotlin's Compiler Plugin Architecture to provide a performant UI layer for Android development (albeit extensible to other platforms). Hadi sits down with the lead of the project to discuss what it is and plans around it.