Márton Braun announces RainbowCake, an Android architecture framework, providing tools and guidance for building modern Android applications. It builds on top of Jetpack, both in terms of code and ideas.
Scoped storage was introduced in Android 10 with further improvements in Android 11 to provide better protection to app and user data on a platform level. This article gives an overview of how the Viber team updated their app.
Cédric demonstrates Kotlin's @Deprecated annotation, and how it introduces a new parameter ReplaceWith allowing you to replace old code with shiny new.
Reach thousands of Android developers around the world with a posting on Android Weekly.
Py, the creator of LeakCanary, took some notes as he learned about the lifecycle of android.app.ContextImpl and android.app.ApplicationPackageManager while investigating an Android memory leak.
Júlio Zynger describes an interesting scenario while using Foreign Key trigger actions, and how their usage in combination with insertion statements can raise unexpected effects.
Catalin Gheorghe shares two ways you can easily reduce the boilerplate code by writing unit tests that accept parameters in Kotlin using JUnit 5.
Yawei gives a deep dive into what Jetpack's benchmark library has done to improve the result accuracy.
Lead engineer for Scoped Storage shares this FAQ for planning your adoption of it.
With Google's ongoing focus on privacy, Yacine Rezgui writes about how they’re introducing changes on how apps can query and interact with other installed apps on the same device on Android 11.
Code quality is incredibly important for the long term maintainability of any software project. In this post, Bevan Steele focuses on Detekt and Ktlin which are some of the most popular tools for Kotlin.
This post by Hari Vignesh Jayapalan showcases a couple of creative ways to compose a function. It leverages the power of extension functions and operator overloading.
Sara N-Marandi introduces two new tools in Android 11: Data Access Audit APIs and Process Exit Reasons, to give you more transparency into your private data access and causes of process exits.
In this article, Mark Allison looks at some techniques for creating Espresso tests for NumberPicker.
Raul Hernandez Lopez wraps up this series of articles on Coroutines Flow by sharing lessons learned & next steps.
In this post, Dan O'Neill steps through the basics of getting started with SQLDelight for Android and iOS using a template project set up to compile to both platforms.
Antimine is a minesweeper-like puzzle game. The objective is to flag the spaces with mines to make the field a safer place without exploding any of them.
RainbowCake is both a set of dependencies that contain classes and other constructs to use in your applications, and guidance on how these applications should be implemented.
Nominate your product for a 2020 Material Design Award and help us showcase the flexibility and capability of the Material Design system. The deadline for self-nominations is October 16, 2020; winners will be announced in December
A playlist for an ever-growing set of Android development webinars published by droidcon Italy.
In this video, you will learn how to set up Firebase emulators so you can develop without network latency, create better unit and integration tests, run Firebase in continuous integration, and experiment without the fear of breaking everything.
In this episode, Jessica Dene Earley-Cha goes over major concepts and builds a Conversational Action using the Actions SDK.
In this episode, Tor, Chet, and Romain talk with Sara N-Marandi and Philip Moltmann from the Android framework team about some of the new permissions changes in Android 11
In this episode of our video series The Update, Natalie Zmuda, global executive editor of Think with Google, talks to Marvin Chow, VP of consumer apps marketing at Google, about how brands can put their customers first and deliver great mobile experiences.