This course provides the required knowledge and skills to design and build a complete Android™ application. It delivers an extensive training on the main Android SDK components and its interactions. The course is updated to include topics compatible with all Android versions up to Android 8 and the source code updated to API 27. Moreover, this course book uses Kotlin programming language instead of Java. Kotlin is a safe and concise programming language that promotes faster development of high quality Android apps.


The course consists of 11 lessons; the first 3 focus on Kotlin fundamentals for candidates who do not have enough programming background or already have  Java background only. The other 8 lessons focus on how to create Android applications from the beginner to the advanced level. The new features of the course include: more practical exercises and labs, easy to understand lessons, and is supported with graphics whenever possible. This course is adequate to provide trainees with the required knowledge and practical skills to be Android application developers. It has a duration of 40 hours and no prerequisites. This course is mapped for AND-801 exam.



  • Learn the essentials of the Kotlin Programming Language and all Kotlin topics related Android applications development.
  • Design and build a complete Android application.
  • Debug and maintain Android applications using different tools and plugins.
  • Thoroughly understand the life-cycle of an Android application and its main components.
  • Use external resources, manifest files, intents and adapters.
  • Understand and use all Android persistent storage techniques: Preferences, files, databases, and content providers.
  • Use Android’s background processing techniques.
  • Build location-aware applications using GPS as a location provider and Google Maps.



This course consists of 11 lessons; the first 3 focus on Kotlin fundamentals for candidates who do not have enough programming background or already have  Java background only ; therefore, no prerequisites for this course.



Module 1: Introduction to Kotlin

  • Kotlin History
  • Kotlin Advantages
  • How Kotlin Programs Work?
  • Kotlin Software Prerequisites
  • Installing Java JDK and JRE
  • Installing Android Studio
  • Creating Kotlin Project Using Android Studio
  • Creating a Kotlin Program
  • Running a Kotlin Program
  • Writing Comments
  • Kotlin Variables
  • Kotlin Data Types
  • Input of Information to Kotlin Program


Module 2: Control Flow Statements

  • If Statement
  • If – Else Statement
  • If Else and Logical Operators
  • When Statement and Expression
  • For Loops
  • While Loops
  • Do-while Loops
  • Jump Expressions
  • Break Statement
  • Continue Statement.
  • Return Statement


Module 3: Functions & Object-Oriented Programming (OOP)

  • Functions
  • Function Structure
  • Creating a Function
  • Functions and Variable Scope
  • Object-Oriented Programming (OOP)
  • Object
  • Class
  • Creating a Class
  • Providing Constructors for Your Classes
  • Class Inheritance
  • Overloading Constructors
  • Overriding Properties
  • Abstract Class
  • Interface Class
  • Generic Class
  • Enum Class
  • Class Variables
  • Member Variables
  • Kotlin Collections
  • Class Hashmaps
  • Class ArrayList
  • Method mutableListOf


Module 4: Android Framework and Android Studio

  • Android Platform Architecture
  • Android Libraries
  • Components of Android Application
  • Types of Android processes and their priorities
  • Android Application Development
  • Android SDK platform
  • Integrated Development Environment (IDE)
  • Android Studio
  • Gradle
  • Instant Run


Module 5: Creating User Interface UI

  • Android Project Structure
  • View
  • Creating User Interface
  • Add a text box
  • Add an Image
  • Add Check Box
  • Add Radio Button

Lab: Creating a Pizza Order Application


Module 6: Android Layouts, Styles, Theme and Menus

  • Views
  • Layouts
  • Constraint Layout
  • Linear Layout
  • Relative Layout
  • TableRow Layout
  • Frame Layout
  • ScrowView Layout
  • Android Styles and Themes
  • Android Styles
  • Android Themes
  • App Manifest
  • Adaptive Icons

Lab: Android Application Layouts, Styles, and Themes


Module 7: Toasts, Activities, Navigations, and Views

  • Context Class
  • Toast Class
  • Positioning Your Toast
  • What is an Activity?
  • Activity Lifecycle
  • Managing the activity lifecycle
  • Android Intent
  • Navigating Between Activities
  • Passing Data Between Activities
  • Android Views
  • ListView
  • RecyclerView

.Lab: Configuration of Android RecyclerView


Module 8: Android Dialogs, Snackbar, Menus, WebView and Notifications

  • Android Dialogs
  • Alert Dialog
  • ProgressBar
  • SeekBar
  • Date Picker Dialog
  • Time Picker Dialog
  • Snackbar
  • Menus
  • WebView
  • Android Notifications
  • Creating an Android Notification
  • Notification Channel

Lab: Configuring Android Web Browser, Menu and Notification


Module 9: Android Storage, SQLite and Content Providers

  • Android Storage Options
  • Shared Preferences
  • Internal Storage
  • External Storage
  • Network Connection
  • SQLite Databases
  • SQLite Database in your application
  • SQLite Library
  • Creating an adapter class for SQLite database
  • Content Providers
  • Creating a Content Provider
  • Sync Adapters
  • How SyncAdapters Work
  • ORMLite
  • Choosing Internal or External Storage

Lab: SQLite Databases and Content Providers


Module 10: Location-Aware Apps: Using GPS and Google Maps

  • What is GPS and how does it work?
  • Other Location Service Providers
  • Configuring Google Maps
  • Map Fragment
  • Getting a Google API key
  • Adding a Google Map Marker
  • Methods to Capture a User’s Location
  • Reverse Geolocation and Geocoder Class
  • JSON and API

Lab: Location-Aware Apps Using a GPS and Google Maps



  • Course Android Security Essentials


Related Certification

  • Android Certified Application Developer (Exam AND-801)