A Guide to Google’s Recommended Architecture for Android Apps

Scalable Path
Product Coalition
Published in
10 min readJan 11, 2021

--

Originally published at Scalable Path by Abdurahman Adilovic on January, 11th 2021.

Just like all software, Android apps should adhere to common architecture rules and patterns. Android apps that don’t follow the right architecture tend to become unmaintainable through cluttered Activities and Fragments lacking a consistent design or set of behaviors.

Given the importance of good architecture, how does one choose which to use for a project? In most cases, I like to recommend Google’s standard architecture for Android apps as a starting point, and then as the app grows more complex, concepts can be added.

So what does Google recommend as a starting point for an Android app? Well, it’s simple. Here are a couple of rules to follow:

  • Be reactive
  • Use ViewModels with LiveData
  • Use a repository for data fetching and caching

But as we’ll see, there’s more to it than that. For example, I believe the addition of Dependency Injection is a must, and there are several options available. In this article, I’ll discuss the strengths and weaknesses of the common architectures for Android apps that are currently in use in order to help you decide the best approach for your next project.

--

--

Curated network of premium technical talent with experienced U.S. based project leaders. Visit us at www.scalablepath.com