Advanced Android App Development

Approx 6 weeks
Built by

Course Summary

This course will guide you through the process of productionizing an app, using Sunshine, the weather app we built in Developing Android Apps. Following Android's Core App Quality Guidelines, we'll identify the production criteria that still needs to be implemented, then tackle each problem until Sunshine is ready to publish on the Google Play Store. In the process, we'll introduce you to a host of tools and concepts, including: material design approaches, image-handling, performance profiling, and more!

Why Take This Course?

As a professional Android developer, you have to create production-ready apps for your users. This class will give you what it takes to ship polished apps as part of a development team at a company, an independent app developer, or just as a programmer using Android development best practices.

By the end of the course, you'll be able to identify critical areas for improvement in an app, and implement the necessary changes and refinements to ensure it meets Android's Core App Guidelines prior to shipping.

Prerequisites and Requirements

To get the most out of this course, you should have at least 1-2 years of Java experience, and prior experience developing Android apps. If you lack experience in Android development, please take this course's predecessor, Developing Android Apps prior to enrolling in this one.

Access to an Android device is helpful, but you may use an emulator if you prefer.

We will share code for this course on Github, so you must be familiar with using Github to complete the activities and final project. Take our course on Using Git and Github if you lack this background.

What Will I Learn ?

Lesson 1: Product Quality

Overview of product quality standards, and an introduction to the goals and structure of this course.

Lesson 2: Integration Points and Error Cases

Identify and resolve integration points, including offline/server integration, and validate user input in the Sunshine app.

Lesson 3: Accessibility and Localization

Expand the audience for your app by making it accessible and easily localized.

Lesson 4: Libraries

Use libraries to handle images, and allow users to personalize their Sunshine experience with custom icons.

Lesson 5: Google Cloud Messaging

Implement a message receiver, and learn how to send messages to Sunshine using the Google Cloud Messaging interface.

Lesson 6: Material Design

Apply material design principles to Sunshine's activity transitions, keylines and layouts.

Lesson 7: Building a Total Experience

Build and implement resizable widgets and immersive wallpaper images.

Lesson 8: Performance

Use profiling tools in Android Studio to identify performance leaks.

Final Project

You will productionize two apps, taking them from a functional state to a production-ready state.This will involve finding and handling error cases, adding accessibility features, and adding a library.