Android Essentials

Embark on what would normally be a multi-year journey in only 4.5 days. This class covers Android from the ground up so that students will understand how to build stable, performant, and stylish apps using the Kotlin programming language.

Android Foundations

Understand what an Activity is and how they are used to construct Android apps. Master the activity lifecycle to elegantly respond to device changes. Use the debugger to find and fix bugs. Safely communicate across Activities. Explore the differences between versions of Android and use new features while maintaining compatibility with older versions.

Full-Featured Android

Use Fragments to create reusable components and to respond elegantly to different types of devices. Display lists of items performantly with the RecyclerView API. Peek behind the scenes at Android’s layout system and understand how to use layout tools such as Constraint Layout. Use Fragments with a ViewPager to swipe between screens in an application. Customize a dialog to present modal content to the user. Add menu options and navigation elements to the Toolbar.

Beyond The Basics

Use a SQLite database to performantly store application data. Seamlessly communicate with other applications using Android’s intent system. Respond to device types to create an app that is optimized for both phones and tablets. Increase the potential user base of an app by supporting multiple languages and improving the accessibility. Explore the MVVM architecture, DataBinding, and unit testing to improve the quality of your code. Focus on the design of an application using Android’s styles and themes APIs. Construct XML Drawables to further customize how users see an app.

Connecting To The Web

Download, parse, and present data from a web service. Learn how to properly create and manage threads on Android. Master the main thread on Android. Understand how to communicate between threads to present data to the user. Learn more about the Toolbar on Android and how to add custom views. Perform background work safely in your application. Receive and respond to system events. Display content from a web site in your application.

Adding Some Fun

Learn how to create your own custom views when the default widgets just won’t do. Receive and respond to raw touch events. Understand how to increase the delightfulness of an app through animation.