Developing Android Apps
Learn Android fundamentals
About this Course
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.
Approx. 60 hours
Included in Product
Rich Learning Content
Taught by Industry Pros
What You Will Learn
Creating Project Sunshine
- Learn how to create and run a simple Android app
- Create simple layouts for Android
- Learn about the Android Studio IDE
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
- 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
The Application Lifecycle
- Understand the phases of the Android application lifecycle
- Learn how to persist data between orientation and other changes
- Allow users to customize some aspects of your app
- Consider when to omit or add a preference
- Learn how Content Providers provide an interface to share data
- Consume data from an already existing ContentProvider
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
- Run jobs in the background of an app
- Create notifications and schedule long-running background processes
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
Prerequisites and Requirements
This course is intended for students with at least 1 year of programming experience in Java or another object-oriented programming language (for example: C++, Objective C or Python).
If you are new to programming, we recommend taking Android for Beginners, which we created with Google for students just like you!
Also, Udacity's Intro to Java is a helpful background if you're looking to refresh your Java skills.
You will be expected to download Android Studio in order to follow along with the instructors throughout the course. For guidance on the install process, take our How to Install Android Studio mini-course.
In addition, you should be comfortable working with code on GitHub.
Access to an Android device is helpful -- but not required -- to complete the final project.
See the Technology Requirements for using Udacity.
Why Take This Course
With over 1 billion Android devices already activated, Android represents an incredible opportunity for developers.
As Android continues to grow beyond smartphones, it will become the brains behind invisible, ubiquitous cloud-connected computing. The skills you learn in this course will help you build awesome apps for smartphones and tablets today, and propel you towards exciting opportunities in Android's future.
By the end of this course, you’ll build a cloud-connected Android app, and understand the tools, principles, and patterns that underlie all Android development. You’ll understand the challenges associated with developing for the mobile environment (and how to overcome them), learn how to build a great user experience for Android devices, and apply this knowledge to your own projects.
What do I get?
- Instructor videos
- Learn by doing exercises
- Taught by industry professionals