Android Development

Overview

About Android Development

Android development is the craft of building apps for the world's most widely used mobile operating system, and this course walks through it in the order most developers actually learn it. It starts with Android Basics & Studio Setup, then Kotlin Fundamentals and Version Control & Repo Hosting so you can write and track real code.

Next comes UI with Jetpack Compose: building screens declaratively with layouts, Material 3, and lists. From there, App Architecture covers ViewModel, MVVM, and Hilt, while Navigation & State covers moving between screens and keeping state alive across rotation and process death.

Local Data & Storage covers Room and DataStore, and Networking & APIs covers Retrofit, JSON parsing, and handling loading and error states in the UI.

Finally, Testing & Debugging covers unit tests, UI tests, Logcat, and profiling, and Publishing & Play Store covers signing a release bundle and shipping through Play Console: the skills that separate a demo from an app people can actually install.

Content

10 modules
01

Android Basics & Studio Setup

Installing Android Studio, creating your first project, running it on an emulator or a real phone, and understanding how an Android app is structured.

Android StudioEmulatorGradle
02

Kotlin Fundamentals

Learning the language Android is built on: variables, functions, classes, null safety, collections, lambdas, and coroutines.

KotlinNull SafetyCoroutines
03

Version Control & Repo Hosting

Tracking changes with Git and collaborating on code through GitHub or GitLab.

GitGitHubGitLab
04

UI with Jetpack Compose

Building screens declaratively with composables, layouts, Material 3 theming, and lists that scroll smoothly.

Jetpack ComposeMaterial 3LazyColumn
05

App Architecture

Separating UI from logic with ViewModel, state hoisting, and the repository pattern, plus dependency injection with Hilt.

ViewModelMVVMHilt
06

Navigation & State

Moving between screens, passing arguments, handling the back stack, and keeping state alive through rotation and process death.

Navigation ComposeStateFlowBack Stack
07

Local Data & Storage

Saving data on the device with Room for structured data and DataStore for simple settings.

RoomSQLiteDataStore
08

Networking & APIs

Fetching and parsing JSON from REST APIs with Retrofit, loading images, and handling loading and error states.

RetrofitJSONCoil
09

Testing & Debugging

Writing unit and UI tests, reading Logcat, using the debugger and profiler, and fixing crashes and slow screens.

JUnitCompose TestingLogcat
10

Publishing & Play Store

Signing and building a release bundle, setting up a Play Console account, and shipping your app to users.

App BundlePlay ConsoleRelease Signing

What You Can Do After This Course

By the end of the curriculum you'll have worked through 5 hands-on projects and covered the core of what a junior Android role expects. Concretely, you'll be able to:

Set up and run an Android project: use Android Studio, Gradle, and emulators or a real device with confidence.

Write and version real Kotlin: use null safety, collections, and coroutines, tracked with Git and shared through GitHub or GitLab.

Build modern UIs: create responsive screens with Jetpack Compose and Material 3.

Structure an app properly: apply ViewModel, MVVM, and dependency injection so code stays testable and easy to change.

Store and fetch data: persist data with Room and DataStore, and consume REST APIs with Retrofit.

Test and debug: write unit and UI tests, and track down crashes and slow screens with Logcat and the profiler.

Ship to the Play Store: sign a release bundle and publish your app through Play Console.