Now available...


Advanced Android Development course!

Already know the basics of building Android apps and want to delve deeper? Take a look at the new advanced course designed by the Google Developers Training team.

Build your Android development skills

Whether you're new to programming or an experienced developer, we have a range of courses to teach you Android app development, from getting started to optimizing app performance.

keyboard_arrow_rightFor new programmers

keyboard_arrow_rightFor developers

keyboard_arrow_rightLearn design skills

keyboard_arrow_rightDive into deeper topics

For new programmers

Reach for the stars and start coding today! Our beginner courses teach you programming skills while you learn how to create apps that run on Android.

We have courses that start at the beginning, introducing the basics of Android and Java programming while guiding you, step by step, through the process of building your very first Android app.

Android Development for Beginners

In this series of courses you build your first Android app.

The later courses in the series teach you how to add more functionality to your app, connect to the Internet, set up databases, and store data in your app.

directions_walkLevel: Beginner

Android Basics Nanodegree

Get guidance and help as you learn the basics of Java and Android programming and build your first portfolio of apps. The Android Basics Nanodegree is for aspiring Android Developers who have no prior programming experience.

All courses are also available individually at no cost.

directions_walkLevel: Beginner

Study together

Work through the Android for Beginners online courses in your own time, and meet in person with fellow students for discussion and support at a study jam.

directions_walkLevel: Beginner

Join a Study Jam

To lead a study jam based on the Android for Beginners online course, download the Android Basics Facilitator Guide.

Lead a Study Jam file_download

For developers

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

new_releases New! Android Developer Fundamentals

Learn basic Android programming concepts and build a variety of apps, starting with Hello World and working your way up to apps that use content providers and loaders. The Google Developers Training team created this classroom-based course for students with Java programming experience.

The course is offered in-person at selected colleges, facilitated by college faculty. The materials are also available online for self-study.

directions_runLevel: Intermediate

new_releases Updated! Developing Android Apps

Learn best practices as you build the Sunshine weather app. In the updated version, you build sample apps as you go through the course.

This is a free, self-paced, online course.

directions_runLevel: Intermediate

Android Developer Nanodegree

Build a portfolio of projects as you earn your Android Developer Nanodegree. In this series of online, self-paced courses, you learn the tools, principles, and patterns that underlie all Android development.

All courses are also available individually at no cost.

directions_runLevel: Intermediate

Advanced Android App Development

This follow-on course to Developing Android Apps teaches you how to follow Google's app-quality guidelines as you productionize and publish your Android apps.

This is a free, self-paced, online course.

directions_runLevel: Advanced

Try a codelab

Google Developer Codelabs provide short, guided coding experiences. Google I/O 2017 featured a number of Android-focused codelabs.

Codelabs are free, self-paced, online modules.

directions_rundirections_runLevel: Intermediate to Advanced

Enroll in a bootcamp

If you prefer to learn in the classroom, join one of General Assembly's 12-week immersive courses, taught by professional Android developers at selected locations.

directions_walkdirections_rundirections_runLevel: Beginner to Advanced

Learn design skills

Learn design skills from Google's design experts.

UX Design for Mobile Developers

Learn techniques to plan, design, and prototype your mobile apps before writing any code.

directions_walkLevel: Beginner

Material Design for Android

Learn how to apply material design principles to build compelling, beautiful interfaces for your Android apps.

directions_runLevel: Intermediate

Dive into deeper topics

For Android developers who want to go deeper....

Android Performance

Make your app fast and efficient. In this course you learn how to speed up rendering, optimize compute and memory operations, and minimize battery drain.

directions_runLevel: Advanced

Monetize Your Android App with Ads

Learn how to use Google's AdMob to display banner ads and interstitial ads.

directions_runLevel: Intermediate

Firebase in a Weekend

Learn how to use Google's Firebase cloud back end to store and share data for multi-user Android apps.

directions_runLevel: Intermediate

Firebase Analytics

Learn how to add Firebase Analytics to your app and use it to make informed decisions about things like ad placement.

directions_runLevel: Intermediate

Google Location Services on Android

Learn how to use the fused location provider to allow your app's behavior to change based on location.

directions_runLevel: Intermediate

Add Google Maps to your Android App

Learn how to add maps to your Android app to how to build a virtual hike down the Grand Canyon!

directions_runLevel: Intermediate

Android TV and Google Cast Development

Learn how to extend your existing Android app to work on Android TV and Google Cast.

directions_runLevel: Advanced

Android Auto Development

Learn how to extend your media or messaging Android app to interact with Android Auto.

directions_runLevel: Advanced

Gradle for Android and Java

Learn how the Gradle build tool compiles and packages apps, and learn to customize the Android build process.

directions_runLevel: Advanced

Google Developers Certification

The Associate Android Developer Exam demonstrates the type of skill that an entry-level Android Developer should have as they begin their career.

By passing this performance-based exam and earning the Associate Android Developer Certification, you prove that you're competent and skilled in tasks that a developer typically performs.

Learn more and sign up