Android Development Learning Path — 2020 Edition

Amit Shekhar
Dec 16, 2019 · 2 min read
Image for post
Image for post

A Complete Learning path for Android Developer

I have been continuously getting requests on different channels to help with the learning path for Android Developers. So, I decided to answer this and help learners. I am sure this is going to help many developers who are willing to become a better Android Developer.

A complete guide for learning Android App development

You just need to follow the following path for learning Android Development in 2020. You can find the updated resources to learn each topic mentioned in the learning path here.

Watch the video format here.

Let's get started

Programming

  • Java
  • Kotlin

Android Studio

  • Android Studio IDE Overview
  • Project Structure — Java/Kotlin, XML, .gradle files

Android Component

  • Activity — Activity Lifecycle, Tasks & Back Stack
  • Service
  • Broadcast Receiver
  • Content Provider

Intents

  • Types of Intent - Implicit, Explicit
  • Intent Filter

Static User Interface

  • View — Button, ImageView, TextView, EditText, and etc
  • ViewGroup - LinearLayout, RelativeLayout, FrameLayout, ConstraintLayout

Dynamic User Interface

  • RecyclerView
  • ViewPager
  • Spinner

CustomView

  • Canvas
  • Bitmap
  • Paint

UI Resources

  • Drawables
  • String
  • Styles

Fragments

  • Fragment Lifecycle
  • Fragment Manager

Support User Interface

  • ProgressBar
  • Dialogs
  • Toast & Snackbar

Storage

  • Shared Preferences
  • File Systems
  • Database — RoomDB

Build

  • Gradle
  • Debug / Release Configuration

Threading

  • Threads
  • Handler / Looper

Debugging

  • Memory profiling
  • Logging
  • Systrace
  • Exceptions
  • Error Handling

Memory Leak

  • Detecting and Fixing Memory Leaks
  • Context

3rd Party Library

  • Image Loading - Glide, Picasso
  • Dependency Injection - Dagger
  • Networking - Fast Android Networking Library, Retrofit
  • MultiThreading - RxJava, Coroutines

Data Format

  • JSON — GSON
  • Flat Buffer
  • Protocol Buffer

Android Jetpack

  • Foundation Components — AppCompat, Android KTX, Multidex
  • Architecture Components — LiveData, ViewModel, DataBinding, Paging, Work Manager, Navigation
  • Behaviour Components - Download Manager, Media Playback, Notification, Permissions, Preference, Sharing, Slice
  • UI Component - Animation & Transition, Android Auto, Emoji, Palette, Android TV, Android Wear

Architecture

  • MVVM
  • MVI
  • MVP

Unit Testing

  • Local Unit Testing
  • Instrumentation Testing

Firebase

  • FCM
  • Crashlytics
  • Analytics
  • Remote Config
  • App Indexing
  • Dynamic Link

Security

  • Encrypt / Decrypt
  • Proguard
  • R8

App Release

  • .keystore file
  • App Bundle
  • Playstore

Keep Learning and Improving

Keep looking for new content on Android Development here.

If you are looking for interview preparation kit for your next job. Check here for the Tech Interview Preparation Kit.

You can download the image format of this learning path from here.

You can find the updated free tutorials to learn each topic mentioned in the learning path here.

Learn to build a ride-sharing Android app like Uber, Lyft.

If you need any help during your learning, do not hesitate to reach out to me via different channels: Twitter, Linkedin, Github, Quora, and Facebook.

Thanks, have a wonderful journey ahead.

Clap, share if you like it and follow me for the updates.

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium