info@wingfotech.com                                  +91-11-40520925                               +91-8743904444 | +91-9999097854

Core Java with Android

Android is an open source project of the Open Handset Alliance that has revolutionized the user experience of a mobile device. Android is a platform for mobile devices, which includes an OS, middleware and some key applications. The OS is based on a variant of Linux Kernel. The biggest advantage is that the success of Android depends on the availability of unique and engaging user applications created by developers.

Course Objective

To understand the android platform architecture:

  • Difference between Android and other mobile development environments.
  • Design, develop, debug, and deploy Android applications,
  • Use Android SDK's simulator to test and debug applications,
  • Construct user interfaces with built—in views and layouts.
  • Advantage of APIs for data storage, retrieval, files, databases etc.

Prerequisite

No experience is required.

Course Modules

Core Java

Chapter 01 — Introduction to JAVA Technology

  • Introduction to JAVA Technology
  • JAVA Language Features
  • What is JAVA bytecode? What is JVM?
  • Different Editions of JAVA
  • Writing the “Hello World" command—line Application
  • Understanding the “main()" method
  • Setting path & classpath

Chapter 02 — Language Fundamentals |

  • Keywords
  • Primitive Data types
  • Legal & Illegal Identifiers
  • Different types of Literals
  • String Literals
  • Different types of JAVA Comments
  • Declaring & Initializing variables
  • Declaring constants using “final" keyword
  • Object—oriented Features
  • Implementing OO Concepts: Defining Classes
  • Variables and methods as members of a class
  • Object reference variables
  • Restricting the access to objects members using an access specifier
  • Different types of access specifiers
  • Understanding the proper encapsulation

Chapter 03 — Language Fundamentals ||

  • Lifetime of Variables
  • Instance methods and class methods
  • Understanding Polymorphism
  • Types of polymorphism
  • Implementing static polymorphism in JAVA
  • Understanding Inheritance
  • Implementing single inheritance using “extends" keyword
  • Implementing dynamic polymorphism
  • Using “final” keyword for
  • Abstract methods & Abstract classes Chapter

04 — Language Fundamentals III

  • Understanding the need of packages
  • Creating a package
  • Compiling and Running Code from Packages
  • Importing a package
  • Understanding the proper use of “protected” keyword
  • Operation on Primitives: Using Operators
  • Different types of operators
  • Precedence & associativity rules for operators
  • Evaluation order of operands
  • Conversions
  • Numeric Promotions:— Unary and Binary Numeric Promotions
  • Floating—point arithmetic and "strictfp"

Chapter 05 — Language Enhancements (Java 7)

  • Annotation
  • Strings in Switch
  • The try—with—resources Statement
  • Type inference for generic instance creation
  • Implementing binary literals
  • Catching multiple exception types and rethrowing exceptions with improved type checking

Course Datasheet

  • Improved varargs method invocations

Chapter 06 — Arrays, String and Wrapper Class

  • Working with Arrays in JAVA
  • Method Overloading Issues: using var—args methods
  • Working with Strings
  • Primitive Wrappers

Chapter 07 — Concept of interface, Abstract class and Exception Handling

  • Interface
  • What is Exception
  • Exception class—hierarchy
  • Understanding the difference between checked & unchecked exception
  • Understanding stack—based execution
  • Handling exceptions( using try—catch—finally blocks )
  • Proper use of throw and throws clauses
  • Chained Exception

Chapter 08 — Nested Class

  • Overview of nested classes and interfaces
  • Types of Nested Class
  • Complete understanding of static nested class
  • Complete understanding of non—static nested classes/Inner classes
  • Local classes
  • Anonymous classes
  • Anonymous Interface

Chapter 09 — Multi—threading

  • Introduction
  • What is a Thread
  • Asynchronous Behaviour/ Race condition
  • Creating a thread
  • Thread Life Cycle, states and their transition
  • Using methods from java.|ang.Thread for state transition
  • Need of synchronization? Concept of Object Locking
  • Language—level support for synchronization : “synchronized" keyword
  • Defining synchronized methods & understanding its importance
  • Using synchronized block
  • Inter—thread communication
  • Deadlock condition

Chapter 10 — Stream—Based |/O

  • Understanding Streams
  • Types: character and Binary streams
  • Input and Output Streams
  • Understanding Stream class Hierarchy
  • Line—oriented I/O
  • Buffered Streams
  • Scanning and Formatting
  • I/O from the command—line

Course Datasheet

  • Standard streams
  • The console
  • Data streams
  • Random Access File
  • Serialization

Chapter 11 — NIO

  • New APIs for file system access
  • Thejava.nio.file package

Chapter 12 — Generics

  • Understanding compile—time type—safety
  • Introduction to Generics
  • Defining a Generic class
  • Understanding Type Parameters
  • Understanding Type Erasure Process
  • Sub—typing and Super—typing
  • Using wildcards
  • Using “7 extends T" and “7 Super T"
  • Generic methods

Chapter 13 — Collection Framework

  • Introduction to collections
  • What is a collection framework
  • Benefits of collection framework
  • Interface Hierarchy

Chapter 14 — The java.uti|.Co|Iection interface: Supported Operations

  • Basic Operations
  • Bulk Operations
  • Array Operation

Chapter 15— Traversing collections

  • Using for—each loop
  • Using Iterator

Chapter 16 — The java.uti|.List interface: Supported Operations

  • Positional Access
  • Search
  • Iteration
  • Range—View

Chapter 17 — The java.utiI.Set interface: Supported Operations

  • Basic Operations
  • Bulk Operations
  • Array Operations

ANDROID

Chapter 01 — Android Overview
  • Android Anatomy and Physiology
  • Mobile Application Development Overview
  • Comparison with other development platform (J2me, Symbian etc)
Chapter 02 — Android Architecture
  • Android Stack Overview of Stack Linux Kernel
  • Native libraries
  • Dalvik VM
  • Application Framework
Chapter 03 — Android SDK Overview
  • Platform
  • Tools
  • Android Development Kit
  • AVD
  • Emulators
  • Mksdcard
  • Sqllite 3
  • Plug in
  • Eclipse
Chapter 04 — Setup Android Development Environment
  • System requirements
  • Eclipse and SDK installation, AVD creation
  • Creating first Android application
  • Project Structure
Chapter 05 — Android Application Fundamental
  • Android application building blocks
  • Activating components
  • Shutting down components
  • LifeCycle of Application
Chapter 06 — Main Building Block
  • Activity
  • Intents
  • Services
  • Content Providers
  • Broadcast Receivers
Chapter 07 — User Interfaces
  • XML Vs Java UI
  • Layouts
  • Common UI Component
  • Drag and Drop UI Design
  • Menu Creation, Dialog, Toast, Alert, Time Picker, Date Picker, Custom Dialog
Chapter 07 — User Interfaces
  • XML Vs Java UI
  • Layouts
  • Common UI Component
  • Drag and Drop UI Design
  • Menu Creation, Dialog, Toast, Alert, Time Picker, Date Picker, Custom Dialog
Chapter 07 — User Interfaces
  • XML Vs Java UI
  • Layouts
  • Common UI Component
  • Drag and Drop UI Design
  • Menu Creation, Dialog, Toast, Alert, Time Picker, Date Picker, Custom Dialog
Course Datasheet
  • Pre—condition and Post—condition
Chapter 08 — Handling User Event
  • Event listeners
  • Event handlers
  • Touch mode
  • Focus Mode
Chapter 09 — Notifing User
  • Toast Notification
  • Status Notification
  • Applying Style and theam
Chapter 10 — Application Resource
  • Providing Resources
  • Accessing Resources
  • Handling Run Time changes
  • Localization
  • Resources Type
Chapter 11 — Android System Overview
  • Preferences
  • Notifications
  • Security model
  • File System
Chapter 12— Multimedia in Android
  • Multimedia Supported audio formats
  • Simple media playback
  • Supported video formats
  • Simple video playback
Chapter 13 — Date Storage
  • Shared Preferences
  • Internal Storage (Files)
  • External Storage(SD Card)
  • SQLite Databases
Chapter 14 — Security and Permissions
  • Security Architecture
  • Debug Certification
  • Certificate & keystone creation
  • Self certifications
  • Application Signing
Chapter 15 — Graphics
  • 2DGraphics
  • 3DGraphics
Chapter 16 — Location and Map
  • Map Layout
  • Get user Location
Chapter 17 — Basic Content Provider
  • Content provider MIME types
  • Searching for content
  • Adding, changing, and removing content
  • Working with content files
Chapter 18 — Services
  • Overview of services in Android
  • Implementing a Service
  • Service life—cycle
  • Bound versus unbound services
Chapter 19 — Broadcast Receiver
  • What are Broadcast Receivers
  • Implementing broadcast receiver
  • System broadcasts and how to use them
Chapter 20 — Intent Filter
  • Role of filters
  • Intent—matching rules
  • Filters in your manifest
  • Filters in dynamic Broadcast Receivers
Chapter 21 — Sensors
  • How Sensors work
  • Listening to Sensor readings
Chapter 22 — WiFi
  • Monitoring and managing Internet connectivity
  • Managing active connections
  • Managing WiFi
Chapter 23 — Camera
  • Taking pictures
  • Rendering previews
Chapter 24 — Bluetooth
  • Controlling local Bluetooth device
  • Discovering and bonding with Bluetooth devices
Course Da'rashee'r
  • Managing BlueTooTh connecTions
  • CommunicaTing with BIueTooTh

Enquiry Form