Get Yourself Registered

Android Mobile Application Development using Kotlin

You'll Learn

Problem Solving, Programming Basics, Kotlin, Android Studio, App Development Basics, Designing UI and Layouts Building, Database Management, Connection with External Data using Rest APIs and Firebase Services


Course Outline
Introduction of Programming

  • Fundamentals of problem solving
  • Intro to FlowCharts/Wireframing/Mockups/Blocking
  • Programming fundamentals
  • Intro to Object Oriented Programming
  • Intro to Algo and Data logic
  • Intro to Database and Software Systems
  • Mobile Application Development & its Types

Introduction to Kotlin

  • Kotlin Playground/ Running Kotlin Code
  • Kotlin Basics (data type, packages, control flow & returns and jumps)
  • Classes and Inheritance, Properties and Fields, Interfaces, Visibility Modifiers, Extensions, Data Classes, Sealed Classes, Generics, Nested Classes, Enum Classes, Objects, Inline Classes & Delegation
  • Functions, Lambdas, Inline Functions, Extension Functions & DSL Wrappers
  • Destructuring Declarations, Collections, Ranges, Type Checks and Casts, This expressions, Equality, Operator overloading, Null Safety, Exceptions, Annotations, Reflection, Type-Safe Builders & Type Aliases

Intro to Mobile Platform and Devices

  • Why Mobile Application
  • Types of Mobile Application
  • Dalvik Virtual Machine
  • How Android Treat Apps

Getting Familiar with Android Development Tools

  • Android Studio IDE Introduction, Menus, Editor Configuration, etc
  • Installing SDKs, Plugins and Tools
  • Intro to Gradle and Legacy ANT build system
  • ADB, Logcat, Build tools and Platform Tools
  • Android Device Manager
  • Running and Debugging Android Apps

Fundamentals of Android Platform

  • How Android Works
  • Android Application Architecture
  • Android RunTime
  • Components of Android OS
  • Structure of Android Application
  • Android Manifests
  • Importing Libraries
  • Understanding Permissions and Requesting Permissions
  • Fundamentals of XML Designing
  • Design Mode
  • LinearLayout, orientation, weight, gravity , fill model
  • RelativeLayout, Alignment properties
  • Constraint Layout
  • Scaling units , DP vs SP
  • Importing Image and Vector Assets
  • Creating Drawables and Custom Shapes
  • Styling, Graphics, Themes and Styling Resources
  • ListView vs RecyclerView
  • Adapters
  • Base Adapter, RecyclerView Adapter

Getting Started with Activities

  • Activities and Activity Life Cycle
  • Starting Activity and Activity for Result
  • Passing Data Across Components like Activities
  • Intents Intent Filters
  • Explicit Intent vs Implicit Intent
  • How Implicit Intent Works

Making Application Interactive

  • Inflating Views and settings values of Fields
  • Layout Elements and View binding in Code via Anko/Android KTX methods
  • Event Handling of Simple Views (Buttons, ImageView TextViews etc)
  • Different ways of Event Handling
  • Datepicker Dialogs and Handling

Breaking Views into Parts (Fragments)

  • Intro to Fragments
  • Fragment LifeCycle
  • Passing data to Fragments
  • Fragment to Activity Communication
  • Communicator Design pattern
  • Adding or Replacing Fragments programmatically in FrameLayouts
  • Activity to Fragment , Fragment to Fragment Communication
  • Adding Fragments to Back Stack

Showing Messages and Dialogs

  • Toast, Alert Dialogs, Custom Dialogs
  • Creating custom Toast
  • Snackbar Toast

Storing Preferences or Persistent Data

  • Default Sharedpreferences
  • Getting/Storing data in Custom SharedPreferences
  • Application Storage

Data Sharing between Applications

  • Content Providers
  • What is Content Provider
  • How Content Provider works
  • Content Resolver , Content URI , query
  • Content Provider Permission
  • Background Services and Broadcast Receivers

Working with Local Data & Cursors

  • Cursor, CursorAdapter
  • Intro to Sqlite
  • Creating DB Schema
  • CRUD Operations to Sqlite DB

Intro to Multithreading Programming

  • Threads
  • Runners
  • Handlers
  • UI Thread

Fetching External Requests (API Calls)

  • Introduction to Networking Libraries
  • Synchronous and Asynchronous Call
  • Intro to JSON
  • Fetching JSON using Volley Library
  • Converting JSON into Kotlin Readable format via Gson Library
  • Loading images from Glide library

Services

  • Intro to Services
  • Why Services
  • Service Life Cycle
  • Types of Services
  • Started Service, Intent Service
  • Bind Service and Sticky Service

Working with GEO Location

  • Understanding GPS
  • Getting Lat Long Coordinates from Mobile Device
  • Using Location API
  • Integration of Google Maps
  • Adding Custom and Interactive Pins to Google Maps

Firebase Services

  • Firebase Messaging Services, Showing notifications from mobile app, Types of Notifications, Sticky Notifications
  • Database
  • Authentication
  • Dynamic Links
  • App Indexing
  • Cloud Storage
  • Remote Config
  • Application Data Backup with Google Drive
  • Intro to Crashlytics & Analytics

Publishing Android Application to Google Play Store or other Stores

Instructor Hammad Asif
Track Duration 6 months
Class Duration 1.5 - 2 Hours

Class Schedules

Mon & Wed
5:30 PM

Payment Modes and Price (PKR)
Lump Sum Payment
Registration Fee Free
Fee 48000
3 Month Installments
Registration Fee 2000
Installment ( x3 ) 16800
6 Month Installments
Registration Fee 2000
Installment ( x6 ) 9600

* These prices are subject to change without prior notice. For final price, refer to this page. You can apply discount in the given discount panel

* Prices are exclusive of any discount. Consult to fee page for final estimation

For Inquiries & Admissions

ion@nitroxis.com

Phone

+92 331 4324430

Address

P28, Paradise Floor,
Siddiq Trade Center,
Gulberg, Lahore
Pakistan