Developing Android Apps with Kotlin (Udacity)

Offered by Udacity,
Developing Android Apps with Kotlin (Udacity)

Create concise, secure and performant apps with Kotlin. Learn to architect and develop Android apps in the Kotlin programming language using industry-proven tools and libraries. With these techniques you'll create apps in less time, writing less code, and with fewer errors.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

This course was developed by Google together with Udacity. The course gives you hands on experience as you build real Android apps using industry best practices, with modern app architecture. You'll learn to use Android Jetpack components such as Room for databases, Work Manager for background processing, the new Navigation component, and more. You'll use key Kotlin features to write your app code more quickly and concisely.
Learning to develop on Android is much more than learning APIs and shortcuts. It's training your brain to think like a mobile developer.

In this free course—developed by experts at Google—you will learn the fundamentals of building Android applications using Kotlin. The course covers architecture components, multi-screen navigation, data persistence, RESTful APIs and Material Design. By the end of the course, you’ll be able to create well-designed Android applications using Kotlin that can connect to the internet, store data and navigate between screens.
Kotlin is an open-source, modern programming language that lets developers use both object-oriented and functional programming techniques. It is concise, safe, and fully interoperable with Java. Kotlin is an official language for Android development and the community of Kotlin developers is growing rapidly, with major companies like Netflix, Pinterest, and Google using Kotlin.

What You Will Learn

Lesson 1
Build Your First App

  • Explore the basics of Android such as creating text images and interactive buttons
  • Set up the development environment and create a Dice Roller Android app
  • Navigate the Main Map Anatomy of an Android app

Lesson 2
Layouts

  • Learn different kinds of views and resources
  • Explore arranging elements with the Android Studio's Layout Editor
  • Connect views with data through data binding

Lesson 3
App Navigation

  • Learn how to build apps that contain multiple screens known as destinations
  • Use Android Studio tools to create and visualize a map or graph of destinations that show navigation paths in your app
  • Learn the navigation patterns and user interface that Android users expect to see so that your app will be intuitive and familiar

Lesson 4
Activity & Fragment Lifecycle

  • Learn all about the Android Activity Lifecycle
  • Create a one-screen app called Dessert pusher
  • Debug common issues through an understanding of lifecycles

Lesson 5
App Architecture (UI Layer)

  • Learn one way to structure an Android app and the benefits that come with this design
  • Learn about two classes in the lifecycle library: ViewModel and LiveData

Lesson 6
App Architecture (Data Layer)

  • Build a Sleep Quality Tracker app and use a database to store the data over time
  • Use SQLite to manage your database

Lesson 7
RecyclerView

  • Use RecyclerView to make significant improvements in the UI of your app

Lesson 8
Connect to the Internet

  • Build an application that connects to an internet server to retrieve and display live data
  • Simplify fetching data and images to make sure the app reasonably conforms to networking and image loading best practices

Lesson 9
Behind the Scenes

  • Learn how to implement offline caching by building an app that lets users watch DevByte videos
  • Take an online-only app and transform it to work offline by adding offline caching

Lesson 10
Designing for Everyone

  • Improve your app design to support multiple languages as well as support multiple device sizes and orientations
  • Learn how to make your app accessible for users who might need assistance navigating like supporting talkback and push button navigation

Prerequisites and Requirements
To succeed in this course, you should have experience navigating GitHub, and be comfortable using a Modern IDE, and the OOP language. You should be familiar with threads and concurrency, and with modular app architectures.Some Kotlin experience is also recommended. You should be comfortable with Kotlin syntax including: nullable and non-nullable variables, methods with default and variable arguments, data classes, object expressions, lambdas and extensions.Finally, you’ll need:

  1. Reliable internet connection to download required software and libraries
  2. Android Studio 3.2 or higher
  3. A GitHub account and understanding on how to use GitHub
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Usable Security (Coursera) Coursera
University of Maryland, College Park

Usable Security (Coursera)

This course focuses on how to design and build secure systems with a human-centric focus. We will look at basic principles of human-computer interaction, and apply these insights to the design of secure systems with the goal of developing security measures that respect human performance and their goals within a system.

Oct 5th 2026
5-12 Weeks
Programando con Java para aplicaciones Android (Coursera) Coursera
Universidad Nacional Autónoma de México

Programando con Java para aplicaciones Android (Coursera)

¡Aprende lo mejor de Java para el desarrollo en Android! Descubre lo necesario para construir tus aplicaciones móviles de una forma sencilla, objetiva y práctica. A lo largo del curso, verás diversos ejemplos para crear tu primer Hola Mundo y practicarás la programación orientada a objetos.

Sep 21st 2026
3 Weeks
WeChat Mini Program Development (Udacity) Udacity
Udacity

WeChat Mini Program Development (Udacity)

Build your first Mini Program with Tencent WeChat. WeChat Mini Programs are “sub-applications” within the WeChat ecosystem; you can find and use any Mini Program instantly without needing to install anything from the App Store. With more than one billion active daily users globally, it’s almost impossible to overestimate WeChat’s importance, and the potential reach of a Mini Program of your design! This program is built in collaboration with Tencent WeChat and leading industry professionals who have developed a world-class curriculum. In this course, students will learn about data queries, parsing, Mini Program interfaces, and then go on to complete their very first Mini Program all within 4 weeks.

Self Paced
Self-Paced
Passwordless Login Solutions for Android (Udacity) Udacity
Udacity,Facebook

Passwordless Login Solutions for Android (Udacity)

For an app developer, providing a seamless user experience is critical for building engagement and growing a user base. Passwordless login solutions provide your users with a simple, secure, and positive first experience. In this course, you'll learn two frameworks for sign-up and authentication: Account Kit, which uses a phone number and code, and Facebook Login for Android.

Self Paced
Self-Paced
Android App Components - Services, Local IPC, and Content Providers (Coursera) Coursera
Vanderbilt University

Android App Components - Services, Local IPC, and Content Providers (Coursera)

This 4 week MOOC builds upon the core Android app components and concurrency frameworks covered in Course 2 by focusing on started and bound services, local inter-process communication (IPC), and content providers. Case study apps will be examined from multiple perspectives to learn how to program these app components using Android's material design paradigm.

Sep 21st 2026
4 Weeks
Android App Capstone (Coursera) Coursera
Meta

Android App Capstone (Coursera)

This course gives you the opportunity to demonstrate the skills you have gained throughout the Android Developer Professional Certificate program. You'll do this by developing an Android app to order food from the Little Lemon restaurant. In other words, you'll create a solution to a real-world problem.

Sep 21st 2026
3 Weeks
Introduction to User Experience Design (Coursera) Coursera
Georgia Institute of Technology

Introduction to User Experience Design (Coursera)

The focus of this course is to introduce the learner to User Experience (UX) Design. User Experience design is design that is user centered. The goal is to design artifacts that allow the users to meet their needs in the most effective efficient and satisfying manner. The course introduces the novice to a cycle of discovery and evaluation and a set of techniques that meet the user's needs.

Oct 5th 2026
5-12 Weeks
Android App Components - Intents, Activities, and Broadcast Receivers (Coursera) Coursera
Vanderbilt University

Android App Components - Intents, Activities, and Broadcast Receivers (Coursera)

This MOOC builds upon the overview of Java and Android covered in Course 1 by delving deeper into core Android components, such as Activities, Broadcast Receivers, Intents, and Intent Filters. You will learn by example how to program these core Android components together with basic Java file I/O classes (such as File, InputStream, OutputWriter, etc.) and Android storage mechanisms (such as Shared Preferences).

Sep 21st 2026
4 Weeks
Introdução ao Desenvolvimento de Aplicativos Android (Coursera) Coursera
Universidade Estadual de Campinas - UNICAMP

Introdução ao Desenvolvimento de Aplicativos Android (Coursera)

Este curso tem como objetivo propiciar um primeiro contato com a Programação para Dispositivos Móveis que operam na plataforma Android. O Android Studio será utilizado como ambiente de desenvolvimento desde o início do curso e você receberá dicas de como obter ajuda quando alguma tarefa estiver consumindo mais tempo do que o necessário. Ao solucionar problemas por conta própria, você irá adquirir a autonomia necessária para concluir projetos de programação.

Oct 5th 2026
5-12 Weeks
UX / UI: Fundamentos para o design de interface (Coursera) Coursera
Universidade de São Paulo, Brasil

UX / UI: Fundamentos para o design de interface (Coursera)

Aprenda com uma das maiores startups do Brasil, a Taqtile sobre com criar a melhor experiência para o seu usuário, formas de gerar ideias, princípios básicos de design e como desenvolver interfaces de aplicativos e sites, esse curso introdutório é composto de aulas teóricas com exemplos práticos de aplicação de cada assunto abordado.

Oct 5th 2026
5-12 Weeks
Android Architecture/Multimedia Framework (Coursera) Coursera
Board Infinity

Android Architecture/Multimedia Framework (Coursera)

This is an Intermediate Course intended for learners passionate about Android Development and have basic knowledge of Android Development. Embark on a comprehensive exploration of Android's architectural components, complemented by an in-depth study of its multimedia frameworks. Designed for software developers, mobile app enthusiasts, and tech professionals, this course offers profound insights into the Android operating system's inner mechanics.

Oct 5th 2026
4 Weeks