Issue #459

March 28th, 2021

Articles & Tutorials

 
A safer way to collect flows from Android UIs (medium.com)

In this article, Manuel Vivo writes how Android Lifecycle Coroutine extensions protect you from wasting resources and why they’re a good default to use for flow collection in the UI layer.

 
Sponsored
link image   Free Chat & Activity Feed APIs for Qualifying Teams (getstream.io)

The Stream Maker Account provides qualifying teams with full and free access to Stream's Chat and Activity Feed APIs, making them accessible to side projects and new startups. No credit card is required.

 
Do or do not; there is no tryEmit() (blog.danlew.net)

Dan Lew some subtleties in converting RxJava's onNext to Coroutine Flow's tryEmit.

 
(hired.com)

 
Sponsored
link image   Learnings from the Android System WebView Crash (www.bugsnag.com)

Critical apps crashed for millions of Android users around the world due to the Android System WebView bug. Read our blog post to get tips on how you can proactively protect your Android apps from similar outages. Never miss a single Android app crash with Bugsnag!

 
Open Composables via notification with Jetpack Navigation (proandroiddev.com)

Igor Escodro examines why Jetpack Navigation Compose is an awesome tool for typing your Compose screens together.

 
Android Paging 3 library with page and limit parameters (proandroiddev.com)

Tomislav Smrečki takes a look at the great improvements that v3 of the Paging library brings to developers.

 
Mocks, fakes and stubs: the stunt doubles of testing (blog.sebastiano.dev)

Sebastiano Poggi considers mocks, fakes, and stubs: what they are, why they're useful, and what's the difference between each other.

 
Jetpack Compose foldable and dual-screen development (devblogs.microsoft.com)

Joy showcases some examples of dual-screen development using Jetpack Compose in different use cases.

 
How much can we share in Kotlin MultiPlatform (danielebaroncelli.medium.com)

There is currently a lot of discussions on how much code it makes sense to share with Kotlin Multiplatform. Daniele Baroncelli presents three different options.

 
Detecting memory leaks in Android applications (dropbox.tech)

Leaks can happen in any program and on any platform, but they’re especially prevalent in Android apps due to complications with activity lifecycles. Lily Chen shows how to track down some of these issues.

 
Ten Years of Styling Android (blog.stylingandroid.com)

Mark Allison has reached a milestone of writing excellent Android development articles for the past 10 years 🎉. Congratulations Mark and Thank You 🙏 for all your excellent work!

 
viktor: Efficient Vectorized Computations in Kotlin (blog.jetbrains.com)

Aleksei Dievskii introduced viktor, an open-source Kotlin library developed by JetBrains Research that aims to make array calculations more efficient.

 
Kotlin Enums Tutorial for Android (www.raywenderlich.com)

In this tutorial by Caio Fukelmann Landau, you’ll build an Android app, using the full potential of Kotlin Enums to handle a list of cartoon avatars and help your users easily create their profiles.

 
All About PendingIntents (medium.com)

Since Android 12 includes important changes to pending intents, Nicole Borrelli talks more about what pending intents do, how the system uses them, and why you might occasionally want a mutable PendingIntent.

 
Ten #AndroidLifeHacks You Can Use Today (gpeal.medium.com)

Gabriel Peal shares just a few tips and code snippets, aka #AndroidLifeHacks, that he and his team have found useful that you can use today.

 
Prime Table Generator in Jetpack Compose (zsmb.co)

Márton Braun goes through the exercise of representing prime numbers in an interesting graphical way using Jetpack Compose.

 
Kotlin Flows ~ an Android cheat sheet (rvbsoftdev.medium.com)

Remy Benza provides a cheat sheet PDF on the Flow API in coroutines for use on Android.

 
Migrate existing library artifacts from JCenter to Maven Central (jeroenmols.com)

While there are many posts on how to publish new artifacts to Maven Central, this post by Jeroen Mols covers all steps required to migrate existing JCenter artifacts as well.

 

Place a sponsored post

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

 

Jobs

 
Android Developer (Manchester, UK)

Passionate about the Android ecosystem & intuitive, low friction apps? UI & performance obsessed? Experienced with native apps & Kotlin? Got 2 years' experience & familiar with agile practices inc TDD/BDD? Great! Come and help a true market leader overhaul our Android app.

 
Android Engineer at onX (Montana or Remote, USA only)

At onX we bring our devotion to the outdoors to work daily with a singular, powerful goal: to awaken the adventurer inside everyone. Using the latest Android and mapping technologies, you'll work on a suite of leading off-the-pavement GPS apps used by millions of explorers.

 
Humbly Confident Senior Android Developer (Remote)

We build You Need A Budget ("YNAB"), the best budgeting software around. We’re a software ecosystem that includes apps for web, iPhone, iPad, Apple Watch, and Android phones. We have some big plans for our Android app, and that's where you come in!

 
Android Engineer (San Francisco)

We are looking for passionate Android engineers who are excited to build the identity layer for the internet. As an Android engineer at Persona, you will be responsible for leading development for Persona's Android SDK that enables our customers to seamlessly and securely verify their customers.

 
Android Developer (Cincinnati, OH/Remote)

Our people are the heart of our business, and we treat them accordingly. We support, uplift, and respect one another – diversity in skills, perspectives, and lived experiences helps us ship impactful products that connect, inspire, and engage audiences.

 

Libraries & Code

 
viktor (github.com)

viktor implements a restricted subset of NumPy ndarray features in Kotlin.

 
Channelify (github.com)

A sample Android app that converts your YouTube channel into a native Android app using YouTube Data API v3.

 

News

 
link image   High Performance Game Audio with Oboe (android-developers.googleblog.com)

Google has added the Oboe C++ audio library to the Android Game SDK. Oboe's support of high-performance, low-latency audio across the widest range of Android devices is the right choice for most game developers.

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

For the March edition of #AndroidDevJourney, Google highlights Android developers from all over the world with many different experiences

 

Videos & Podcasts

 
link image   IntelliJ IDEA Tips and Tricks 2021 (www.youtube.com)

In this talk, Hadi Hariri will show you some new (and some not so new) tips and tricks for using IntelliJ IDEA (applicable to Android Studio as well).

 
AndroidCafe.in Meetup - 3 awesome talks (www.youtube.com)

Special International Women's Day Celebration with 3 awesome talks on DataStore, Kotlin Coroutines, and a case study on digital bank application

 
Interview with Chris Lacy (adbackstage.googledevelopers.libsynpro.com)

Chet and Romain host Chris Lacy, a long time independent Android developer. In this episode, Chris explains how he decides what apps to build, how he used various platform APIs to create innovative applications like LinkBubble, and what challenges he faces

 

Specials

 
A Checklist For First-Time Engineering Managers (blog.pragmaticengineer.com)

Gergely Orosz wanted to make the path to becoming a new manager "easier", and so he created a "checklist" that he wishes he had when starting out as a new EM.