new_releases New! Advanced Android in Kotlin

code Codelab-based

Take your Android coding skills to the next level in our free, self-paced Advanced Android in Kotlin training. The course uses the Kotlin programming language and teaches you about notifications, graphics and animations on Android, how to login users, add maps to your apps, and how to properly test your apps. Each lesson includes a tutorial with solution code in GitHub.

directions_run Training level: Advanced

Start course

Android Kotlin Fundamentals

code Codelab-based

In our free, self-paced Android Kotlin Fundamentals training, you learn basic Android programming concepts using the Kotlin programming language, and you build a variety of apps. Each codelab includes a tutorial with solution code in GitHub.

directions_run Training level: Intermediate

Start course

Android Developer Fundamentals (Java)

code Codelab-based

In our free, self-paced Android Developer Fundamentals training, you learn basic Android programming concepts using the Java programming language. You build a variety of apps, starting with Hello World and working your way up to apps that schedule jobs, update settings, and use Android Architecture Components. Each lesson includes a codelab with solution code in GitHub, concept documentation, and a slide deck.

The Google Developers Training team designed this course.

directions_run Training level: Intermediate

Learn more

Advanced Android Development (Java)

code Codelab-based

Take your Android coding skills to the next level in our free, self-paced Advanced Android Development training. The course uses the Java programming language and teaches you ways to expand the user experience, improve app performance, and add features like custom views, animations, and location-awareness. Each lesson includes a tutorial with solution code in GitHub, concept documentation, and a slide deck.

The Google Developers Training team designed this course.

directions_run Training level: Advanced

Learn more

For new programmers

Android Development for Beginners

videocam Video-based

A free, self-paced series of courses for aspiring Android developers. Learn how to build your first Android app, add functionality to the app, connect to the internet, and set up databases.

directions_walk Level: Beginner

1. Android Basics: User Interface
2. User Input
3. Multi-screen Apps
4. Networking
5. Data Storage

Android Basics Nanodegree

videocam Video-based

If you enroll in the Android Basics Nanodegree program, you get guidance and help as you work your way through Udacity's beginner courses for Android. This program is a great way to build your first portfolio of apps and earn a Nanodegree.

directions_walk Level: Beginner

Learn more

For experienced developers

If you've been coding for a while, we have courses to help you build your Android skills and learn best practices.

code Google Developer Codelabs

Have a spare hour and want to learn a new Android development trick? Each codelab provides a focused, self-contained coding experience that you can complete on your own.

Codelabs are free, self-paced, online modules.

directions_run directions_run Level: Intermediate to Advanced

Build Your First Android App in Kotlin

Build Your First Android App in Java

More Android codelabs

More Kotlin courses...

Know object-oriented programming and want to learn Kotlin for Android programming and other purposes? Try one of these courses.

new_releases New! Kotlin Bootcamp for Programmers

code Codelab-based

Learn the essentials of Kotlin in this free, self-paced series of codelabs. Whether you’re a Java developer or a programmer in another object-oriented language, this course will teach you the features that have made Kotlin so popular with developers. By the end of this course, you’ll have the skills you need to build your next project in Kotlin.

directions_run Level: Intermediate

Developing Android Apps with Kotlin

videocam Video-based

Learn to architect and develop Android apps in Kotlin, using industry-proven tools and libraries. Try these Kotlin techniques to create Android apps in less time, with fewer errors and less code.

This is a free, self-paced course.

directions_run Level: Intermediate

More Java programming language courses...

Android Developer Nanodegree

videocam Video-based

Build a portfolio of projects as you earn your Android Developer Nanodegree. Receive personalized help as you learn the tools, principles, and patterns that underlie all Android development.

All courses are also available individually at no cost.

directions_run Level: Intermediate

Advanced Android App Development

videocam Video-based

This free, self-paced course teaches you how to follow Google's app-quality guidelines as you productionize and publish your Android apps.

directions_run Level: Advanced