Android app development is the practice of building lifecycle-driven software that runs on the Android platform, primarily using Kotlin with the Android SDK + AndroidX (Jetpack). Jetpack Compose is the recommended modern UI toolkit, backed by a declarative state model and a rich ecosystem spanning navigation, animations, adaptive layouts, and on-device AI. Production complexity arises from coordinating UI state with asynchronous work (network, storage, background execution) while respecting component lifecycles and modern platform restrictions. A useful mental model: the system owns your process and components, and your app reacts to callbacks, intents, and state flows rather than controlling a linear main loop.
What This Cheat Sheet Covers
This topic spans 18 focused tables and 192 indexed concepts. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
Table 1: Tooling and Core Setup
Everything you reach for before writing a line of app code lives here — the IDE, the Gradle wrapper that pins your build version, and the command-line tools (adb, sdkmanager, logcat) that talk to devices and emulators. Get these right early and the rest of the toolchain mostly stays out of your way.
| Tool | Example | Description |
|---|---|---|
Tools > SDK Manager | Primary IDE for Android development (code, build, run, debug, profile). | |
./gradlew tasks | Project-pinned Gradle launcher ( gradlew / gradlew.bat) that downloads and uses the declared Gradle version. | |
plugins { id("com.android.application") } | Gradle plugin that adds Android build tasks — APK/AAB packaging, resources, and manifest merging. | |
libs.versions.toml in gradle/ | • Centralized dependency and version declarations in TOML • reduces duplication across modules. | |
class MainActivity : ComponentActivity() | • Kotlin-first language for Android • official recommended language since 2019. |