Android Development Learning Path

Amit Shekhar
MindOrks
Published in
2 min readDec 16, 2019

A Complete Learning path for Android Developer

I am Amit Shekhar, Co-Founder @ Outcome School, and 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 better Android Developers.

You just need to follow the following path for learning Android Development.

Let’s become friends on Twitter, Linkedin, Github, Quora, and Facebook.

You can find the Roadmap for Android Developer here: Android Developer Roadmap

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. Learn Kotlin Coroutines from here.

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

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.

Prepare yourself for Android Interview: Android Interview Questions

Thanks, and have a wonderful journey ahead.

Amit Shekhar

Co-Founder @ Outcome School

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

--

--

Amit Shekhar
MindOrks

Co-Founder @ Outcome School | Coder | Teacher | Mentor | Open Source | IIT 2010-14 | Android | Machine Learning | Backend