Course

Create a Multiscreen App in Android

Learning path outcomes

  • Grasp the importance of state management and the importance of state management in UI development
  • Able to organize an Android app into multiple screens and navigate to those screens based on user state
  • Leverage the importance of app architecture such as MVI and the ViewModel

Prerequisites

You should have already worked through our Foundational Tools in Android and Learn the Kotlin Language courses.

Achievements

Earn a badge when you finish this learning path!

Create a Multiscreen App in Android

Learning path content

1
State Management in Jetpack Compose
This module aims to teach learners how to manage state and how to use state to recompose the user interface.
Expand module content Hide module content Show module content Hide module content
2
Navigation in Jetpack Compose
This module covers essential navigation concepts and techniques in Jetpack Compose. You will create a multiscreen movie booking app, exploring the Navigation Component, passing arguments between screens, and sharing data with external apps. The course progresses to advanced topics like implementing deep links and setting up a bottom navigation bar. Throughout the module, you gain hands-on experience with key navigation elements such as the navigation graph, controller, and host, while also learning to handle arguments and create a seamless user experience. By the end, you will have a comprehensive understanding of how to implement efficient navigation in Jetpack Compose applications.
Expand module content Hide module content Show module content Hide module content
3
Save User State
Saving user state is a critical aspect of Android development. This module will cover the different persistence mechanisms available, including DataStore, Android Files, and Room Database, and how to select the appropriate one based on a given situation. Learners will learn how to save simple data using DataStore, understand the different types of storage available on Android, save and read data from Android Files, and work with Room Database to perform CRUD operations.
Expand module content Hide module content Show module content Hide module content