Issue #414

May 17th, 2020

Articles & Tutorials

link image   Material Shape: Gotchas (

Applying Material Shape is a very powerful tool, and Mark Allison shows why we need to take care and structure our styles, themes, and overlays to avoid maintainability issues while making careful shape choices.

Activity, Intent, Bundle (

For those starting out on Android, Magda Miu shares a cheat-sheet for Activities, Intents, and Bundles.

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.

Early learnings in testing with Jetpack Compose (

Joe Birch dives into a small user flow for an app he's building and looks at how we can write automated UI tests for the screens involved.

link image   SDKs and APIs Suck Data From Your App (

Your app is using SDKs and APIs for background location, geofencing, road snapping, and more. They are sucking user data out of your app and storing, using, and maybe even selling it. PathSense has no access to your data, it never leaves the phone. Try it for FREE.

ViewModel and SavedStateHandle: always retain state (

ViewModels famously solved the device orientation change problem. So as long as you save the state in ViewModel (instead of the Activity/Fragment) you are safe, right?

Fan(s)tastic: Search for blazing-fast results (

Viswanathan K P shares how he rewrote a search module and used the power of the Presentation layer to drive the app UI

Understanding Kotlin Coroutines with this mental model (

In this blog post, Lukas Lechner will help you form a solid mental model about coroutines, this new emerging concept for modern software development.

Should I use Jetpack ViewModel? (

In this post, Grégory Lureau goes further into the Jetpack ViewModel to understand the implications of adding this library into a project.

Using Koin in a Kotlin Multiplatform Project (

John O'Reilly examines how the Koin library can now be used in a multiplatform project.

Why do we need Jetpack Compose? (

Pamela Hill aims to take a step back and look at the bigger picture to answer the question — why do we need Jetpack Compose?

Kotlin withContext vs Async-await (

In this post, Amit Shekhar writes about using withContext and Async-await in Kotlin Coroutines.

Don't Rewrite Your App, Unless You Have To (

App rewrites can have positive results, but they are challenging. In this post, the Snap Engineering team outlines some of their decision making processes and lessons learned from the experience.



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


Libraries & Code

oolong (

MVU for Kotlin Multiplatform

FernwehApp (

A little sample app for Jetpack Compose. It searches Unsplash for travel pictures for the destination of your choice, some nice travel eye candy.

AU-COVIDSafe-android (

Australia's COVIDSafe android app

EasyFlipViewPager (

The library for creating book and card flip animations in ViewPager in Android

android-ecosystem-cheat-sheet (

This project by Igor Wojda maps the most important parts of the Android ecosystem (200+ tools, services, plugins & libraries).

Learn-Jetpack-Compose-By-Example (

This project contains various examples that show how you would do things the "Jetpack Compose" way



link image   Fluent UI Unlocks the Next Gen of Microsoft 365 Experiences (

Microsoft announces the Fluent UI design system, with a common set of controls available for web, Android & iOS.


Videos & Podcasts

link image   The Sandbox Show: LeakCanary (

In this episode of the Sandbox Show, Pierre-Yves Ricau and Emily Kager take a look at using LeakCanary to address some memory leaks in the open-source Firefox android app Fenix.

Talking Kotlin: Oolong (

Sit down with Michael Pardo to discuss the MVU pattern, taking a brief look at all the other patterns that have existed for UI development over the years. We

How to foster remote collaboration and culture (

Head of Design at Novoda, Leonie Brewin and Director of Strategy at Foolproof, Tim Loo, share insight into inclusive remote practises which can shape how your team and company collaborate, improve performance and culture - and why these aspects are so important to success

AsyncAndroid: Dampfnudel Drop (

The next AsyncAndroid drop is available, with presentations on Room migrations and Making your app smaller in size.

Android Dialogs: Marion Hayoun & Eyal Lezmy (

Android Dialogs is back! Huyen gets on a video call with Eyal Ezmy and Marion Hayoun, Android developers and members of the Android Makers team

Managing Parallelism Using Coroutines (

In this presentation, Fabio Collini shows how to leverage the Kotlin coroutines library to manage parallelism, from the basic concepts to some advanced example.