This article is intended to be an fairly comprehensive, but still accessible explanation of three layer architectures (emphasizing Passive View), and why you might want to try using something similar in your projects. It turns out that the why behind this question is quite important.
By request, here are some excerpts from my Introductory Android Ebook "A Dropout's Guide to Designing and Building Android Apps"
Android Live Q&A Ep. 9 - How to solve App Problems, How does MVP fit into Clean Architecture?
My best attempt at writing a generalized approach to determining the Use Cases (or Interactors if you prefer) of an Application.
Android Live Q&A Ep. 8 - Managing Dagger 2 and Model View Presenter Injection
How to build a RecyclerView from start to finish. Includes full Open Source App and Video footage of me building everything.
Android Live Q&A Ep. 7 - Learning Android from Youtube, StackOverflow, and Open Source Code
Android Live Q&A Ep. 6 - 5(2) Step process for Learning Android, Should you use Firebase for backend?
Android Live Q&A Ep. 5 - Clean Architecture w/ Dagger 2, Designing a New App, Agile SDM
Android Live Q&A Ep. 4 - Kotlin or Java, Adapters, ViewHolder Pattern, Reading Documentation