Issue #473

July 4th, 2021

Articles & Tutorials

 
link image   Debugging Story: The Case of Rogue Reflection (armaxis.hashnode.dev)

Artem Chubaryan talks about a particular issue he was debugging recently in one of our Square's Android SDKs.

 
Kotlin Multiplatform Mobile Codelab (codelabs.kmp.icerock.dev)

The team at IceRock has shared a codelab for building an app for Android & iOS using Kotlin Multiplatform Mobile.

 
Creating a retro-style game with Jetpack Compose (dev.to)

GDE Thomas Künneth writes a series of articles on creating a retro game using Jetpack Compose.

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

 
Scalable Jetpack Compose Navigation (medium.com)

In this article, Lachlan McKee shares his journey building with Jetpack Compose, explores what he believes is a scalability problem within the documentation provided by Google, and presents a possible solution.

 
Providing AssistedInject supported ViewModel for Composable using Hilt (blog.shreyaspatil.dev)

In this article, Shreyas Patil shows how you can obtain the instance of ViewModel for usage in Composable screen which is supported by AssistedInject.

 
Two-way communication without internet: Nearby Connections (medium.com)

The Nearby Connections API allows your users to connect with each other even when no internet is available. Isai Damier takes a look at how to integrate it into an app.

 
Tabletop mode on foldable devices (medium.com)

In this blog post by Francesco Romano, you will learn a simple and efficient way to adapt your app’s layout when it runs on foldable devices.

 
Using Composition in Kotlin (www.raywenderlich.com)

Prashant Barahi shows how composition makes your Kotlin code more extensible and easy to maintain

 
Review of Android 12 for Developers (proandroiddev.com)

Kirill Rozov enumerates the various changes coming in Android 12 that developers should look for.

 
Advanced Usage of WorkManager in multi-process apps (medium.com)

In WorkManager 2.6, Google has taken it a step further to add support for Workers to run in any process and allow workers to be bound to a particular process. Caren Chang explains how this works.

 
Scope Storage Myths (medium.com)

A big change that comes with targeting API 30 is the requirement to work with Scoped Storage. Nicole Borrelli provides recommendations and possible alternatives for how to adapt your apps.

 
Refactoring Kotlin type-signatures for fun and profit (dentondav.id)

In which David Denton derives the core type signatures of http4k from an unexpected source, by using refactoring and FP techniques more commonly associated with coding.

 
Compose: Strikethru Animation (blog.stylingandroid.com)

Jetpack Compose doesn't support animated-selector, so Mark Allison considers another way to animate an icon.

 
Browsing Jetpack Compose samples (dev.to)

A tip from Anton Shilov on how to easily browse the Jetpack Compose sample code from Android Studio.

 

Design

 
link image   Material Design's Baseline Design Kit for Figma (www.figma.com)

Material Design's Baseline Design Kit provides all you need to create beautiful apps, complete with components and theming guidance.

 

Jobs

 
Senior Android engineer at series B startup (San Francisco, Remote)

We're a team of 60 with engineers from Square and Dropbox working to build a safer and more secure internet. Our customers include Doordash, Postmates, Tesla, Angel List, Coursera, Brex, and Instacart, and we're just getting started. Email careers@withpersona.com to learn more, or apply online.

 
Android Developer (Columbus OH)

The Android Developer is a full time position for a mobile application developer with extensive Android experience. Requirements: Bachelor's Degree in Information Technology or equivalent. Specific experience with Java and Kotlin. 2+ years of mobile application development.

 
Senior Android Developer (Remote in EMEA)

Komoot is and app that lets you find, plan, and share outdoors adventures. You’ll team up with 4 world class Android engineers and take over full responsibility for the app.You’ll develop diverse features for navigation, routing, social interaction and content visualization.

 

Libraries & Code

 
link image   NotyKT (github.com)

NotyKT is the complete Kotlin-stack note-taking application built to demonstrate the use of Kotlin programming language in server-side and Modern Android development tools.

 
retained (github.com)

A lightweight alternative to Android's ViewModels. The easiest way to retain instances in Activities, Fragments or Composables.

 
SSImagePicker (github.com)

Easy to use and configurable library to Pick an image from the Gallery or Capture an image using a Camera

 

News

 
Play Dev ID requirements + 2-Step Verification (android-developers.googleblog.com)

To keep Google Play safe and secure and to better serve our developer community, Google is introducing two new security measures: additional identification requirements and 2-Step Verification.

 
Initial Thoughts on Code Transparency (commonsware.com)

Mark Murphy continues to analyze the situation regarding Google moving away from Android Archives (.aar) to Android App Bundles (.aab) and forcing all new apps to use it.

 
The future of Android App Bundles is here (android-developers.googleblog.com)

Google Play will start requiring new apps to be published with the Android App Bundle starting August 2021. This will replace the APK as the standard publishing format.

 

Videos & Podcasts

 
link image   Anvil with Ralf Wondratschek (thebakery.dev)

Anvil is a plugin to make your dependency injection with Dagger 2 easier, described by Ralf Wondratschek, Mobile Engineer @ Square

 
Material Composition (adbackstage.googledevelopers.libsynpro.com)

Nick and Romain talk to Clara Bayarri and Matvei Malkov about Compose’s support for Material Design

 
Migrating to Compose: AbstractComposeView (www.youtube.com)

When migrating to Compose, it's likely that you won't be converting all of your app in one go. To help with your migration, check out the AbstractComposeView, allowing you to use Composables in the form of an Android Custom View directly inside of existing Android layouts.