Mobile – Hybrid and Native Development

2 Days


Mentoring hours


Hours per Session








Case studies

Course Description

This course focuses on developing multiplatform mobile applications using the Web technologies (HTML5, CSS and Javascript). In particular we make use of the Cordova hybrid application framework to develop and target multiple mobile platforms with a single codebase. We make use of the Ionic framework (Ionic Ver 3.x), one of the most popular mobile application frameworks, that is built with mobile-optimized HTML5 and CSS based components and Angular. You will learn about UI development with Ionic and then using Cordova’s modules to access the native mobile platform’s capabilities from Javascript. You should have already completed the Bootstrap 4 and the Angular courses in this specialization before proceeding with this course. At the end of this course you will be able to (a) Build mobile applications targeting multiple platforms with a single codebase, (b) Leverage your HTML5, CSS, Javascript and Angular skills, and (c) Use various features of the Ionic framework to build hybrid mobile applications


Introduction to Android App Development

In the last few years, mobile technology has introduced a magnanimous amount of change in the world of technology and communication. In this course, you get introduced to the Android development and the technologies associated with it. You will be developing Android apps using Android Studio IDE.

Introduction to User Interface, Activity & Event Handling

Your app’s user interface is everything that the user can see and interact with and Android provides a variety of pre-built UI components. Understand the UI components, activity, events and build a graphical user interface using it.

Intent & Menus

Android Intent is the message that is passed between core components such as activities, content providers, broadcast receivers, services etc. The menu is one of the important user interface entity which provides some action options for a view. Here we discuss the application and scope of intent and menus.


A Fragment represents a behavior or a portion of user interface in an Activity. Understand fragments, its combination of multiple fragments to build a multi-pane UI and reuse it in multiple activities.

Data Storage, Preferences

Android provides several options for you to save persistent application data. The solution you choose depends on your specific needs and how much space your data requires. Some of them are Shared Preferences, Internal Storage, External Storage, SQLite Databases and Network Connection. Master each of these with their applications.

App Widgets

App Widgets are miniature application views that can be embedded in other applications and receive periodic updates. You will learn about the widgets and will publish them with an App Widget provider.

Material Design, Web Services

Explore Material Design to create fascinating interfaces. Understand data exchange in the form of restful API i.e. JSON/XML using HTTP calls (POST, GET, PUT, and DELETE).

App Debugging, Development, Testing

Learn the final stages of app development like app debugging, adding breakpoints, working with the logs, deploying an application, publishing your app and releasing it with signed APK.

Google Cloud Machine Learning API’s

Google Cloud’s AI provides modern Machine Learning services like Powerful Image Analysis, Powerful Speech Recognition, Powerful Video Analysis, Powerful Text Analysis, Fast, Dynamic Translation with the pre-trained models and a service to generate your own tailored models. Major Google applications use Cloud Machine Learning.

Google Maps, Google AdMob, Analytics, and Third Party Libraries in Android

We will cover how to use Google Maps, Analytics, Google AdMob, Firebase Cloud Messaging for your Android app. Study the Android third-party libraries like Facebook & Google+ and its implementation(8-10 hrs Self Based Videos).

  1. Introduction And Its Fundamentals

  • Android Introduction
  • Android & It’s Features
  • Android Releases
  • Android Architecture
  • Android Architecture – Linux Kernel
  • Android Architecture – Native Libraries
  • Android Architecture – Application
  1. Introduction And Its Fundamentals

  • Android Studio – The User Interface
  • Android Application Project Structure
  • Android Manifest
  • Gradle Build
  • Gradle Files
  • Android Virtual Device
  • Run Your App
  • Useful References
  • Tool Window
  • Code Completion
  • Style and Formatting
  • Android Internationalization
  • Supporting Different Platform Versions
  • Supporting Different Screens


  1. Fundamentals & User Interface Design

  • Android Application Component Activity
  • Starting an Activity
  • Why Life Cycle is Important?
  • Pausing An Activity
  • Resume an Activity
  • Stopping
  • Restarting Activity
  • Handling Device Orientation
  • User Interface Design
  • View & ViewGroup
  • Layouts
  • UI Components
  • View & ViewGroup Example
  • Resources
  • Resource Type
  • Building Layouts Using XML
  • Load the XML Layout Resource
  • Accessing Views From Java Code
  • Accessing Resources in Java Code
  • Accessing Resources from XML
  • Building layouts in Java Code
  • Accessing Assets in Java Code


  1. Fundamentals, User Interface Design

  • Configuring Lint in Android Studio
  • Styles Themes
  • Defining Styles
  • Constraint Layout
  • Add Constraint Layout
  • Introduction to Context
  • Using Context
  • Activity Context vs Application Context
  • Log
  • Toast
  • Event Handling
  • Common Event Listeners
  • Steps Involved in Adding Event Listener
  • Custom Views
  • Custom View Drawing
  • Making Views Interactive
  • Accessibility
  • Accessibility Checklist


  1. Back Stack, Deep Linking, Animation, Debugging

  • Back Navigation and Up Navigation
  • Task and Back Stack
  • External Entry Points (Deep Linking)
  • Handling Navigation from Deep Links
  • Creating Back Stack Manually
  • Animations in Android
  • Types of Animations
  • Animation Implementation
  • Debug Your App
  • Steps to Debug an App in Android
  • How to Debug when App is Already Running
  • System Logs
  • Working with Breakpoints
  • Add Breakpoints in App
  • Examine Breakpoints
  • Capture Screenshot
  • Capture Videos
  • Prerequisite – Javascript [ES6/7],React
  • Introduction to ReactNative
  • react-native vs create-react-app
  • Configuring for android
  • Configuring for iOS
  • Layout basics
  • Text,TextInput,View,ScrollView,FlatList,SectionList
  • Touchables and Touch events
  • Flexbox, Image,Modal
  • Timer, TimerMixin
  • Other usefull components
  • Debuggin React Native apps
  • Navigators, Pickers
  • Implementing Redux
  • Connecting with Database using HTTP [AJAX]
  • Accessing Camera and other native features of mobile
  • Map implementation
  • Authentication and general best practices for mobile apps
  • Understanding android/iOS behavior
  • Practical Project
  • Publishing
  • Flutter architecture
  • Cofiguration for android
  • Configuration for iOS
  • Running first app and understanding Widget
  • Learning basic syntax of DART
  • Layout basics
  • Debugging techniques
  • Flutter and Material designs
  • Cupertino Widgets
  • Assets,Image and Icon widgets
  • Statefull vs Stateless widget
  • Navigation and Routing
  • Motion and Animation widgets
  • HTTP calls and data management
  • Accessing Camera and other native features of mobile
  • Implementing Map
  • Accessibility and internationalization
  • Publishing app on android and iOS platform