Fundamental Principles of Android App Development

Understand Android architecture and begin building apps using Android Studio and Java/Kotlin.

Fundamental Principles of Android App Development showcase image
Track
Software Development
Level
Intermediate
Language
English
Duration
30 hours
Learning Mode
Learn at ALC or at Home

Introduction

  • Understand the basics of the Android operating system and its architecture.
  • Explain the installation and configuration process of Android Studio and other development tools.
  • Develop simple Android applications using Java.
  • Identify the components of an Android application and understand their functions.
  • Implement user interfaces using various Android widgets and views.
  • Apply object-oriented programming principles in Java for Android development.
  • Handle events and manage the activity lifecycle in Android applications.
  • Utilize Android’s internal storage and shared preferences for data persistence.
  • Debug Android applications to identify and fix errors.
  • Demonstrate the use of long-running tasks and asynchronous operations in Android development.

What you'll learn ?

  • By the end of the course, learners will be able to:
  • Describe the basics of the Android operating system and its architecture.
  • Explain the process of installing and configuring Android Studio and other development tools.
  • Create simple Android applications using Java.
  • Identify the components of an Android application and explain their functions.
  • Design user interfaces using various Android widgets and views.
  • Apply object-oriented programming principles in Java for Android development.
  • Handle events and manage the activity lifecycle in Android applications.
  • Utilize Android’s internal storage and shared preferences for data persistence.
  • Debug Android applications to identify and fix syntax, runtime, and logical errors.
  • Demonstrate the use of long-running tasks and asynchronous operations in Android development.

Syllabus

Introduction to Android
  • Introduction to Android
  • Introduction to Google Play Store
  • Booming Job Prospects
  • Career Opportunities in Android
  • Android Operating System
  • Android versions
  • Features of Android
  • Android Architecture
  • Android Devices
  • History of Android
  • Android Apps
  • In-Built Applications
  • Applications by Google
  • Social Networking Applications
  • Types of Applications
  • Paid and Free Apps
  • Google Model
  • Prerequisites
  • Android Environment Setup
  • Downloading JDK
  • Setting Path of JDK
  • Installation of Android Studio in Mac, Linux and Windows
  • Setting up ADT Plug In
  • Creating First Android Application
  • Creation of App
  • Android Studio Vs Eclipse
  • Android Studio Fundamentals and Android Studio IDE
  • Viewing and adding Java
  • Compilation and Runtime
  • Compilation Process
  • Creating Hello Project
  • Android Components
  • Android Intent
  • Types of Intent
  • MVP Pattern
  • Advantages of using MVP
  • Android Services
  • Types of Android Services
  • Broadcast Receivers
  • Android Content Provider
  • Types of Views
  • Overview of Android Widgets
  • History of Java
  • Introduction to Java
  • Java Development Structure
  • Java Program Platform
  • Features of Java Program
  • Difference between POP and OOP
  • Java Applications
  • Java Virtual Machine
  • JVM Architecture
  • JDK Alpha and Beta
  • J2SE
  • Java SE version
  • Setting up Java and Installation of JDK
  • Setting Java Variable
  • Java Program
  • Program structure of Java
  • Java Import Statements
  • Java Class Definition
  • Java Class Member Ordering
  • Different styles of Print Statements
  • Main Method Signatures
  • Java Identifiers
  • Reserved Words
  • Variables
  • Datatypes
  • Type Casting
  • Operators
  • If Statement
  • Switch Statement
  • While Loop
  • Do-While Loop
  • For Loop
  • For Each Loop
  • Java Break Statement
  • Java Continue Statement
  • Arrays
  • Java Maps
  • Program Flow
  • Introduction to Class and Object
  • Working with Object Initialization
  • Object Oriented Programming
  • Constructors
  • Overloading
  • Packages
  • Uses of Import
  • Access Modifiers of Java
  • Inheritance of Java
  • Uses of Inheritance
  • Relationship between Class and Interface
  • Polymorphism of Java
  • Java Exceptions
  • Introduction to Event Handling
  • Overview of Event Handlers
  • Overview of Event Listeners
  • Overview of Event Registration
  • Declarative Event Handling
  • Programmatic Event Handling
  • Working with Event Handling
  • Types of Errors
  • Demonstration of Syntax Errors
  • Runtime Exception
  • Demonstration of Runtime Exception
  • Logical Errors
  • Demonstration of Logical Error
  • Component Activation
  • Android Lifecycle
  • Demonstration of Activity Lifecycle
  • Intent and its types
  • Implementing the Intent
  • Passing data to another Activity
  • Introduction to Themes and Colours
  • Working with Themes and Colours - Creating Project, Changing values of defined colours,
  • Theme Colours, Styles
  • Introduction to App Bar
  • Working with App Bar - Adding items, working with Toolbar Activity
  • Fragments
  • Working with Fragment Design
  • Working with Fragments Activity
  • Long Running Task
  • Demonstration of the Long Running Tasks
  • Introduction to AsyncTask
  • Demonstration of the AsyncTask
  • Introduction to Shared Preference
  • Overview of Operating Mode
  • Introduction to Editor
  • Overview of Methods
  • Storing Data
  • Overview of Retrieving Data
  • Clear and Delete
  • Working with Shared Preference - xml File, Main Activity
  • Verifying file
  • Internal Storage
  • Difference between Shared Preference and Internal Storage
  • Read and Write data to Internal Storage
  • Syntax to Write a text file and Reading a text file
  • Demonstration of Internal Storage

Work-Centric Approach

The academic approach of the course focuses on ‘work-centric’ education. With this hands-on approach, derive knowledge from and while working to make it more wholesome, delightful and useful. The ultimate objective is to empower learners to also engage in socially useful and productive work. It aims at bringing learners closer to their rewarding careers as well as to the development of the community.

  • Step 1: Learners are given an overview of the course and its connection to life and work
  • Step 2: Learners are exposed to the specific tool(s) used in the course through the various real-life applications of the tool(s).
  • Step 3: Learners are acquainted with the careers and the hierarchy of roles they can perform at workplaces after attaining increasing levels of mastery over the tool(s).
  • Step 4: Learners are acquainted with the architecture of the tool or tool map so as to appreciate various parts of the tool, their functions, utility and inter-relations.
  • Step 5: Learners are exposed to simple application development methodology by using the tool at the beginner’s level.
  • Step 6: Learners perform the differential skills related to the use of the tool to improve the given ready-made industry-standard outputs.
  • Step 7: Learners are engaged in appreciation of real-life case studies developed by the experts.
  • Step 8: Learners are encouraged to proceed from appreciation to imitation of the experts.
  • Step 9: After the imitation experience, they are required to improve the expert’s outputs so that they proceed from mere imitation to emulation.
  • Step 10: Emulation is taken a level further from working with differential skills towards the visualization and creation of a complete output according to the requirements provided. (Long Assignments)
  • Step 11: Understanding the requirements, communicating one’s own thoughts and presenting are important skills required in facing an interview for securing a work order/job. For instilling these skills, learners are presented with various subject-specific technical as well as HR-oriented questions and encouraged to answer them.
  • Step 12: Finally, they develop the integral skills involving optimal methods and best practices to produce useful outputs right from scratch, publish them in their ePortfolio and thereby proceed from emulation to self-expression, from self-expression to self-confidence and from self-confidence to self-reliance and self-esteem!