What You'll Learn

  1. Basics of Java Programming
  2. Building User Interface for Android App
  3. Activities and fragments
  4. Managing Background Tasks
  5. Networking in Android
  6. SQLite Database
  7. App Notifications


  You can code Android applications

  • Introduction
  • Course contents
  • Setting the environment

  Build your first Android application

  • Build your first application part 1
  • Build your first application part 2
  • Improve your application and challenge
  • Challenge solution

  Java tutorial

  • Java variables and arithmetic operators
  • Java operators conditional statements for loops
  • Loops continued and challenge
  • Create Guess Me Game challenge solution
  • Arrays
  • Objective oriented programming
  • Object oriented programming part 2
  • Object oriented programming Challenge
  • Collections in Java
  • Static keyword Inner classes Interfaces Abstract classes
  • Concurrency and threading in Java challenge
  • Concurrency and threading in Java challenge solution
  • Concurrency and threading in Java challenge solution continued

  User interface

  • User Interface Basics
  • User Interface Basics continued
  • Constraint layout relative layout linear layout on click listeners
  • List View and Spinner and their adapters and on Item Click Listeners
  • Different XML files
  • Look different in different configurations Manifest
  • Challenge and Solution
  • Challenge solution continued

  Sample application

  • First Sample Application Apps first page and Intents
  • Logs List View Gradle Recycler View Recycler View Adapter
  • Recycler View Adapter Continued
  • Recycler View Continued Card View Create Utility Class
  • Show all books Intents and Multiple Activities Show Book Details
  • Fix Book layout Add Books to different categories Alert Dialogs
  • Improve the app add all categories enable up button
  • Redesign app logic add about dialog web view
  • Delete books by long pressing on a card view animations

  Shortcuts and debugging

  • Android Studio Environment and shortcuts
  • Debugging logs exceptions run the app on a real device

  Activities and fragments

  • Activities Concept and Declaration Activity Life cycle
  • Navigate between activities and Pass data
  • Intent actions and types and flags handling intent results
  • Calendar Challenge
  • Save Instance State Android Support Library AndroidX
  • Fragments
  • Pass data with call backs create a customized dialog
  • Image Slider App
  • Challenge Create a gym app part 1
  • Challenge Create a gym app part 2
  • Challenge Create a gym app part 3
  • Challenge Create a gym app part 4

  Background tasks

  • Threads and Async Task
  • Started Services
  • Bound Services
  • Job Scheduler
  • Work Manage

  Networking in Android

  • Create a news feed reader with Xml Pull Parser
  • Create a news feed reader with Xml Pull Parser part 2
  • JSON concept and parsing with Gson
  • Volley and Http Methods
  • Networking with Retrofit

  Second sample app - create an online grocery

  • Creating the navigation drawer
  • Bottom navigation view shared preferences
  • Initialize shared preferences and recycler view adapter
  • Customized sorting create grocery item activity layout
  • Show items in grocery item activity add review
  • Handle rating add items to cart
  • Finish search activity
  • Handle rating Debug search activity and show items by category
  • Create cart activity
  • Debug cart activity and add second cart fragment
  • Create third cart fragment and payment
  • Add Popularity Points Close keyboard at proper times make navigation drawer functional
  • Track user behavior and make suggestions personalized
  • Final debugging and improvement


  • Basic SQL Commands
  • Basic SQL commands continued
  • SQLite Challenge 1
  • Implement SQLite database
  • SQL Open Helper Class
  • More on SQLite databases and cursors
  • SQLite Database Challenge
  • SQLite Database Challenge Continued
  • SQLite Database Challenge continued
  • Take a photo using camera and basic permissions
  • Handle Permissions Correctly
  • Room Database
  • Room Database Implementation call backs and migration Live data
  • Composition Abstraction many to many relationships in room database
  • Room Database challenge part 1
  • Room Database challenge part 2

  Content Providers

  • Content Providers concept Get data from Calendar Content Provider
  • Insert Update and Delete events using calendar content provider
  • Challenge Using Contacts Content Provider to get contacts
  • Search Delete and Update Contacts using Contacts Content Provider
  • Insert a contact using Contact Content Provider
  • Create Database and Recycler View Adapter before creating Content Provider
  • Create Content Provider Contract Start Creating Content Provider Uri Matcher
  • Retrieve data from database using Content Provider
  • Insert Update Delete and get Type methods for content provider
  • Share your applications database with other applications using content provider


  • Create Notification Channel Issue a simple Notification content intent for notification
  • Make actions for notifications cancel a notification progress notification
  • Large text Big picture and inbox styles for notifications
  • Media and Messaging styles for notifications
  • Set a custom view for notification