Issue #453

February 14th, 2021

Articles & Tutorials

 
link image   Backdrop Scaffold (compose.academy)

Joe Birch examines the Backdrop Scaffold, a composable that allows us to create two layers of content, and offering the ability to switch between the two

 
On code style and consistency (www.rockandnull.com)

Bevan Steele argues why it's important for a team to have a shared understanding of their code style.

 
How we sped up Dropbox Android app startup by 30% (dropbox.tech)

Marianna Budnikova writes how the Dropbox Android team has invested in measuring, identifying, and fixing the issues that were affecting their app startup time and ended up improving it by 30%.

 
Sponsored
link image   Build a Chat Integration in Hours with Stream Chat (getstream.io)

Get started today with an easy-to-use, open-source, Kotlin-first, actively maintained chat SDK. Channels, messages, attachments, reactions, offline support, real-time events – we got you covered. Start a free trial now, and see why Stream powers feeds and chat for over a billion end-users!

 
JUnit 5 Assertions In Android - Is It Enough? (vladsonkin.com)

This article by Vlad Sonkin aims to see if it’s enough for us to use only standard JUnit 5 assertions, or we still need an additional third-party library for this.

 
Migrating old artifacts from JCenter to MavenCentral (www.marcogomiero.com)

As you may have heard, JCenter is shutting down in May 2021. Marco Gomiero shows how to migrate your artifacts and publishing to MavenCentral.

 
Help, adb is not found! (medium.com)

Patrick Martin discusses what to do if you ever need to invoke an adb and see that the command is not found.

 
Advanced Annotation Processing (www.raywenderlich.com)

Annotation processing is a powerful tool that allows you to pack more data into your code, and then use that data to generate more code.

 
Backpressure in your Kotlin Flows (medium.com)

This article by Nick Skelton will help you choose the correct backpressure strategy for your Flow and understand a little about why backpressure is important.

 
Jetpack Compose: Theme and Typography (alexzh.com)

Alex Zhukovich discusses what role themes play when developing a UI with Jetpack Compose.

 
AnimatedIcons: Visibility V3 (blog.stylingandroid.com)

In this post, Mark Allison looks at how to create an animation as Animated Vector Drawables. We’ll also showcase some useful AVD techniques.

 
Parallax effect made it simple with Jetpack Compose (juliensalvi.medium.com)

In the past, Julien Salvi implemented a screen with a parallax scrolling background. Here he shows how we can implement this animation coupled with a fade out of the image using Jetpack Compose.

 

Place a sponsored post

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

 

Jobs

 
Staff Android Engineer (New York, NY)

Join the team that delivers the member-facing experience for our core products - the bike & tread. This team works heavily with Kotlin - all within our custom fork of AOSP. We care about architecture, testing, and “together we go far” mentality. Staff engineers at Peloton are technical leaders

 
Android Engineer @ Monzo (London; Remote UK, Ireland, or France)

At Monzo we’re building a bank that’s fair, transparent and a pleasure to use, and we're looking for a product-aware Android engineer passionate about great UI and UX to help!

 

Libraries & Code

 
Linkt (github.com)

A lightweight and simple Kotlin library for deep link handling on Android 🔗

 
McCompose (github.com)

🍔 A McDonald’s app built with Jetpack Compose

 
name-that-color-desktop (github.com)

A compose desktop demo project

 

News

 
link image   Announcing Kotlin Symbol Processing (KSP) Alpha (android-developers.googleblog.com)

Announcing the alpha of Kotlin Symbol Processing (KSP), an all-new tool for building lightweight compiler plugins in Kotlin. KSP offers similar functionality to KAPT, however it’s up to 2x faster, offers direct access to Kotlin compiler features, and is being developed with multiplatform compatibility in mind.

 
New curriculum for educators to teach Android app development (android-developers.googleblog.com)

Google has announced the launch of a new instructor-led curriculum for Android Development with Kotlin for virtual or in-person classroom learning.

 
Cloud Firestore for Games is now in Beta! (firebase.googleblog.com)

Firebase announced that Cloud Firestore for Games is now publicly available in beta for C++ and Unity developers.

 
Migrating from Imperative to Reactive (www.meetup.com)

Register now for the next Virtual Kotlin User Group meetup, featuring Nicolas Fränkel presenting about "Migrating from Imperative to Reactive".

 

Videos & Podcasts

 
link image   Introduction to http4k (www.youtube.com)

This is an introduction by Dmitry Kandalov to the http4k library for Kotlin which lets you test-drive HTTP servers and clients without any magic (just functions calling functions)

 
Android Developer Stories (www.youtube.com)

Hear the success stories from customers, partners, and Android Developers all around the world.

 
Podcast: Interview with Joe Birch (www.raywenderlich.com)

Joe Birch shares the joys of transparent and asynchronous work through his interview in ‘Living By The Code.’

 
Friends App Android Client Ep2 (www.youtube.com)

In this episode, Jovche Mitrejchevski goes through the steps required to make automated publishing to Google Play Store.

 
Motion Layout: Building a collapsible header (www.youtube.com)

Sean demonstrates how you can build a collapsible toolbar using Motion Layout.

 
How to support Android Versions (www.youtube.com)

Android runs on many devices with different versions. Vlad Sonkin describes how minSdkVersion, compileSdkVersion, and targetSdkVersion come in and help with this.

 
State Of Kotlin In 2021 (www.youtube.com)

Nate Ebel explores these questions: What is the state of the Kotlin programming language in 2021? What are the new features? Where are investments being made? How is Kotlin being used?

 
Meet Kotlin Multiplatform Mobile! (www.youtube.com)

In the first episode of this series, you will get to know what Kotlin Multiplatform Mobile is and how you can use it in your project.