Issue #451

January 31st, 2021

Articles & Tutorials

 
link image   Modelling UI State on Android (lordraydenmk.github.io)

Stojan Anastasov describes the tradeoffs between the approaches for holding view state and presents a tool to help you decide which one to use.

 
A Garbage Collection Story (proandroiddev.com)

Denis Crăciunescu explains visually how garbage collection works on Android.

 
Helpful ADB commands (alexzh.com)

This article by Alex Zhukovich contains information about a few ADB commands that allow us to interact with devices and test applications more efficiently.

 
Sponsored
link image   Place a sponsored post & reach over 66k Android devs (androidweekly.net)

 
How to Publish an App on Google Play (www.thedroidsonroids.com)

Karol Wrótniak shares a complete guide for App and Product Owners who want to submit their applications to Google Play successfully.

 
Migrating Your Design System to Jetpack Compose Part 3: Interop & Testing (adambennett.dev)

In this third article, Adam Bennett talks about how you actually integrate Jetpack Compose into an existing View-based app and how to test your freshly minted Composables.

 
Using gradient for styling text (medium.com)

While Android’s styling system is pretty powerful, it lacks an out-of-the-box way to style a text using a gradient for coloring its text. Chris Margonis shows a method to achieve this.

 
Migrating From Dagger to Hilt (www.raywenderlich.com)

Massimo Carli helps discover how Hilt facilitates working with Dagger by migrating the code of an existing app from Dagger to Hilt.

 
Bad Kotlin Extensions (krossovochkin.com)

Vasya Drobushkov shows several examples of anti-patterns when considering adding Kotlin extensions.

 
How to Customize Android Snackbar (vladsonkin.com)

Android Snackbar is one of the ways of how we can show a message in Android. Vlad Sonkin examines how to use and customize it.

 
RxJava vs. Coroutines (blog.danlew.net)

In order to evaluate a move from RxJava to coroutines, Dan Lew wrote down a list of pros/cons for each framework.

 
Paging 3 — Easier Way to Pagination (proandroiddev.com)

Metin Özcura takes a look at the latest Paging 3 library, currently in alpha, and compares how it changed from the previous version.

 
Using WorkManager in multi-process apps (medium.com)

Ben Weiss shows how the recent release of WorkManager 2.5.0 enables easier usage in a multi-process environment and provides several stability improvements.

 
UI Testing with Kakao & Testing REST APIs Using MockWebServer (labs.armut.com)

UI tests are normally written using Android native testing framework which is Espresso but in this post, Caner Gulgec shows you how to write UI tests with Kakao and mock REST API responses.

 
Kapt's Hidden Test Costs (www.zacsweers.dev)

Zac Sweers noticed that kapt will run on your test builds even if you didn't ask it to, and provides a workaround.

 
Tips for building a quality app with Firebase (medium.com)

In this article, Maria Neumayer takes you through some of the things she and her team do with Firebase to ensure our app is always at its best.

 
Navigating in a pure jetpack compose project — part #1 (proandroiddev.com)

Karan Dhillon demonstrates how to use navigation component in the compose world where there are no fragments

 
Kotlin Standard Library Safari: Strings (dev.to)

In the "Kotlin Standard Library Safari" series, Jetbrains is going through the useful functionality the standard library in Kotlin has to offer. This episode is all about strings – how we manipulate them, extract information, compare them, and much more

 

Jobs

 
Android Software Engineer (San Diego, California)

This Android Engineer will participate in the development of Android applications that enable consumers to capture, relive and share their experiences + passions by developing media management, editing + story-telling features for use with GoPro cameras, media + cloud content.

 
Senior Android Engineer (United States - Remote)

Citizen is the No. 1 safety app in the U.S., with a mission to make the world a safer place. Citizen provides 911 alerts so people can use their phones to keep themselves, and the people and places they love, safe. This Engineer will drive our mobile product execution for the Android Platform.

 

Libraries & Code

 
link image   Balloon (github.com)

A lightweight popup like tooltips, fully customizable with an arrow and animations.

 

News

 
#AndroidDevJourney spotlight - January edition (android-developers.googleblog.com)

Google shines the spotlight on several talented Android developers with .#AndroidDevJourney

 
Expanding the reach of your Android Auto apps (android-developers.googleblog.com)

You can now reach more drivers by publishing navigation, parking, and charging apps to open testing tracks in the Google Play Store

 
Firebase Experimental Extensions (firebase.googleblog.com)

Firebase Extensions are a convenient way to add new functionality to your app with the click of a button. Google announces two new kinds: Experimental and Community Extensions.

 
New tool for visualizing ProGuard rules (playground.proguard.com)

Guardsquare, makers of ProGuard have released an online tool for visualizing the effects of ProGuard rules on your APK.

 

Videos & Podcasts

 
link image   Kotlin Standard Library Safari: Strings (www.youtube.com)

Tune in to this new multi-part YouTube series “Kotlin Standard Library Safari” to learn all about useful functionality #Kotlin has to offer by default.

 
gRPC with Kotlin Coroutines (www.youtube.com)

Mohit Sarveiya presentation about gRPC, a technology that allows you to call server side logic from any platform using protocol buffers.

 
Hilt: Dependency Injection on Android (www.youtube.com)

Joe Birch provides a series of videos where he steps through implementing an app using Hilt for dependency injection.

 
Motion Layout: Using keyframes (www.youtube.com)

Sean demonstrates how to use keyframes to modify a path in Motion Layout by adding rotation and translation to change the path of a single view as it moves across the screen.

 
JAI Conversational Framework (talkingkotlin.com)

Vitaliy Gorbachev talks about JAI Conversational Framework - a tool that allows you to build a conversational interface to your application without the need to use any of the big players on the market.

 
Android Intent in Modern Android Development (www.youtube.com)

Intents facilitate communications between components in Android. Vlad Sonkin explores Intents in the age of Jetpack and examines how they are used in apps

 
Getting started with Google Analytics for Firebase (www.youtube.com)

Patrick Martin goes over the basics of using Google Analytics in your Kotlin Android application