Free Course

Developing Android Apps

School Of Programming and Development

Build a cloud-connected Android app, and learn the tools, principles, and best practices of mobile and Android development that you'll apply to your own projects.

Sample Nanodegree Programs

  • Introduction to Cybersecurity
  • Intermediate JavaScript
  • Front End Web Developer
Explore School

This Course

Free Course
Developing Android Apps
Industry-relevant content
Project reviews
Career Services / Job Assistance

Related Nanodegree

Nanodegree Program
Android Developer
Industry-relevant content
Project reviews
Career Services / Job Assistance
Learn More

Course Details

Course Details Free
Timeline Approx. 60 Hours
Skill Level Intermediate

Included in Product

  • Rich Learning Content
  • Taught by Industry Professionals
  • Student Support Community
  • Interactive Quizzes
  • Self-Paced Learning

Developing Android Apps

As the first course in the Android Developer Nanodegree, Developing Android Apps is the foundation of our advanced Android curriculum. This course blends theory and practice to help you build great apps the right way. In this course, you'll work with instructors step-by-step to build a cloud-connected Android app, and learn best practices of mobile development, and Android development in particular.

Course Leads

Dan Galpin
Lyla Fujiwara
Reto Meier
Asser Samak
James Williams
Cezanne Camacho
Michael Lustig
Jocelyn Becker
Program Manager


lesson 1

Creating Project Sunshine

  • Learn how to create and run a simple Android app
  • Create simple layouts for Android
  • Learn about the Android Studio IDE
lesson 2

Loading Data from the Internet

  • Connect to the Internet and communicate with web APIs
  • Learn about threading and how to make requests without slowing down your app
  • Learn how to add menus to your app
lesson 3


  • Learn about the components that convert a list of data into visual UI elements
lesson 4


  • Learn the difference between Explicit and Implicit Intents
  • Learn how to navigate inside your apps using intents
  • Learn how to create Intents that apps outside your control can respond to
lesson 5

The Application Lifecycle

  • Understand the phases of the Android application lifecycle
  • Learn how to persist data between orientation and other changes
lesson 6


  • Allow users to customize some aspects of your app
  • Consider when to omit or add a preference
lesson 7

Content Providers

  • Learn how Content Providers provide an interface to share data
  • Consume data from an already existing ContentProvider
lesson 8

Android Architecture Components

  • Learn how to use Room, LiveData, ViewModel and Lifecycle components
  • Understand how architecture components can help you build robust and efficient apps
lesson 9

Background Tasks

  • Run jobs in the background of an app
  • Create notifications and schedule long-running background processes
lesson 10

Completing the UI

  • Build a well-organized, accessible UI for your app
  • Try different layouts, views, viewgroups, and methods of databinding
  • Design your UI for users who speak different languages
lesson 11

Polishing the UI

  • Add visual polish to your apps with different layouts, fonts, and colors
  • Use design principles to create apps that look great across multiple form factors