Run Your First App on the Emulator
Build, launch, and see Hello World on screen.
Run Your First App on the Emulator is a free Jetpack Compose Academy lesson on CoddyKit — lesson 4 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Jetpack Compose Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
Time to See It Run
You wrote a Composable, now let's run it. In minutes you will watch Hello World appear on a virtual phone right inside Android Studio. 🚀
setContent Hooks Up Your UI
Every Compose app starts in MainActivity, where setContent connects your Composable tree to the screen. It is the bridge from Android to Compose.
setContent {
Greeting("World")
}Pick a Run Target
In the toolbar, choose a device to run on: your emulator or a plugged-in phone. Android Studio lists every available target in a dropdown.
Press the Green Run Button
Hit the green Run arrow (or Shift+F10). Android Studio builds your app, installs it on the device, and launches it automatically.
Gradle Builds the APK
Behind the scenes, Gradle compiles your code and bundles it into an installable app. The first build is slow, later ones are much faster.
Hello World Appears
The emulator boots, your app installs, and your Greeting shows on screen. That text came straight from your Composable function. 🎉
Preview vs Real Run
The @Preview pane shows UI fast without installing. Running on a device is the real thing, with full interactivity and actual behavior.
@Preview
@Composable
fun GreetingPreview() {
Greeting("World")
}Edit, Then Re-Run
Change your text, press Run again, and the app updates. This tight edit and run loop is how you iterate quickly on real screens.
Watch the Logcat
Logcat at the bottom streams logs from your running app. When something misbehaves, this is the first place you look for clues.
First Build Feels Slow
Do not worry if the first launch takes a while. Gradle is downloading and caching libraries. Subsequent runs reuse that cache and fly.
Stop and Re-Launch Anytime
Use the red Stop button to halt the app, then Run again to relaunch. You stay in full control of the build-and-test cycle.
Quick Check
Let's confirm what connects your Composables to the screen.
Recap: Your First App
You did it! setContent hooked up your UI, Run built and installed it, and Hello World appeared. Now you can edit, re-run, and watch Logcat as you go.
Frequently asked questions
Is the “Run Your First App on the Emulator” lesson free?
Yes — the full text of “Run Your First App on the Emulator” is free to read here on the web, and the Jetpack Compose Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Jetpack Compose Academy course, upgrade to CoddyKit PRO.
What will I learn in “Run Your First App on the Emulator”?
Build, launch, and see Hello World on screen. You practise Jetpack Compose Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Jetpack Compose Academy?
No prior experience is required. Jetpack Compose Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 4 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Run Your First App on the Emulator” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Jetpack Compose Academy lesson?
Yes. Every Jetpack Compose Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- What Compose Replaces: Goodbye XML
- Set Up Android Studio for Compose
- Anatomy of an @Composable Function
- Run Your First App on the Emulator