Android
Application
Development
Course Syllabus
Catalyzing
Mobile Computing
Revolution
Complete Mobile application Development
Training company
Module 1 – Android GUI Development
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
· Introducing Android Development environment.
Day 1 : Targeting Android – · Stacking up Android · The Android SDK
· Booting Android development · Fitting the pieces together
The Big Picture. · An Android application · Building an Android
· Summary application in Eclipse
· The Android Emulator
· Debugging
· Summary
· What makes up an Android application · Create a simple form
Day2 : Android: Guts & GUIs · Using XML for UI layout Application.
· Basic widgets
· Introductions to LinearLayout, RelativeLayout, and TableLayout
· Hierarchy Viewer · Create a fancier form
Day3: Development Tools · DDMS and log results · Home assignment
· DDMS and simulating calls
· DDMS and file upload/download
· DDMS and screenshots
· Making and using SD card images
· The role and use of adapters · Add a selection list to the form
Day4: Selection Widgets · Lists · Home assignment
· Spinners
· Grids
· Auto-completion fields
Small Project based on the knowledge gained during this Module. Continue same Project
Day5: Hands On
Module 2 – Advance GUI Development
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
· Using custom layouts in list entries · Add icons to the selection list
Day 1 : Fancy Lists · Populating list entries
· Recycling views
· Using the holder pattern
· Date and time pickers · Make the form span multiple
Day2 : Fancy Widgets · Tabbed dialogs tabs: list on one, details on
· ViewFlipper another
· Galleries
· Adding option menus · Add a menu to the app that
Day3: Menus and Messages · Adding popup menus raises a toast
· Showing dialogs
· Raising toasts
· The “one thread to rule them all” rule · Add a menu choice that does
Day4: Threads · Handlers fake background processing and
· Alternatives to Handler updates a progress bar
· Progress bars
Day5: Hands On
Small Project based on the knowledge gained during this Module. Continue same Project
Module 3 – Advance Android Programming
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
· How activities are supposed to behave Stop the fake background
Day 1 : The Activity Lifecycle · onCreate() and onDestroy() processing when the activity is
· onPause() and onResume() paused, pick up again when
· onSaveInstanceState() resumed
- General theory of resources · Support a different layout for
Day2 : Resources - Drawables landscape instead of portrait
- Values views
- XML
- Offering multiple resource sets
- Having multiple activities in your project · Remove the tabs, put the list on
Day3: Using Multiple - Starting other activities from your project one activity and the detail form
- Getting results from activities on a sub-activity
Activities - Using URIs to launch system activities
- Using shared preferences · Allow users to configure default
Day4: Preferences and Files - Preference screens values
- Preference XML configuration
- Preference change notification
- Simple reading and writing of file
Small Project based on the knowledge gained during this Module.
Day5: Hands on
Continue same Project
Module 4 – Data Structure Programming
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
- Introducing SQLite a. Creating SQLITE Database
Day 1 : Working With - SQLiteOpenHelper and creating a database and executive different
- Opening and closing a database types of SQL query.
Database - Working with cursors b. Using SQLITE database in
- Inserts, updates, and deletes the project.
a. XML and RSS - XML Parsing, working on RSS feeds Developing simple RSS Reader
Day2 : XML b. Document Object Model (DOM) application.
c. Simple API for XML (SAX)
Processing/parsing d. An RSS Reader Application
Overview of native networking options
Day3: Using HttpClient - Simple HTTP GET using HttpClient · Writing simple Http Client.
- Posting forms
- Cookies
- Authentication
- XML and JSON
Day4: Consuming Web a. SOAP - Developing SOAP Client , Consuming and parsing soap Developing application which
response takes data from SOAP and REST
services [SOAP and REST] b. REST – consuming REST Web Services, JSON Objects API.
Day5: Hands On
Continue same Project
Small Project based on the knowledge gained during this Module.
Module 5 – Inbuilt Device Programming
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
a. Location Tracking a. add “L:30.010,- 90.007”-style
Day 1 : Handling Location Android's location tracking model, Getting updates as you move, Getting markup on user request to
the latest fix, Proximity alerts, Choosing providers via criteria, Testing via tweets, using current location
DDMS
b. Google Maps API b. A Simple Location-aware
Rules and API keys, Adding a map, with center and zoom Application with GMAP
Levels, Overlays and MyLocationOverlay, Custom overlays with push-pins, integration.
Zoom controls
Handling Rotation Events- Theory of rotation in Android, Using a. Moving a Ball on screen with
Day2 : Working with Devices onSaveInstanceState(), Using onRetainNonConfigurationInstance(), Using accelerometer.
onConfigurationChanged(), Blocking screen rotation b. Developing audio recorder
Working with Audio - playing and recording audio file, using media and Player
picker controller class and searching the ipod library. c. Developing Video recorder
a. Working with video - Playing, recording and streaming video. and Player
b. Accessing Device Information d. Application which monitor
c. Taking and selecting Pictures battery level.
d. Monitoring Device Battery - Battery level, Battery state, Battery state
and level notifications
Internationalization/Multilingual support - string Localization, Date Developing sample multilingual
Day3: Formatting and Number Formatting. application.
Internationalization/Multilingu
al
a. Determining Network Connectivity a. Voice chat application
Day4: Advanced Networking b. Uploading Multimedia Content development
c. Computing MD5 Hash Value
d. Multithreaded Downloads
e. push notification
f. peer to peer networking
Small Project based on the knowledge gained during this Module.
Day5: Hands On Continue same Project
Module 6 – Android Services Programming
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
- Role of services poll for friends timeline updates
Day 1 : Creating Local - Service lifecycle methods
- Sharing state in local services
Services - Threads and local services
- Starting and stopping services populate ListView with friends
Day2 : Using Local Services - Getting updates via shared state timeline updates
- Getting updates via Intents and BroadcastReceivers
- Role of remote services make the polling service be
Day3: Remote Services - Creating AIDL interfaces remote, using AIDL for control and
- Exporting and importing AIDL interfaces callbacks for async updates
- Callbacks from service to client
Role of notifications, Raising a notification, Augmenting notifications via raise notifications when posts hit
Day4: Notifications hardware, Reacting to selected notifications, Handling multiple notification- the timeline containing a keyword
worthy
events
Day5: Hands On
Continue same Project
Small Project based on the knowledge gained during this Module.
Module 7 – Android NDK Programming
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
- Simple mechanics of the libs/ directory Patchy: experiment with
Day 1 : Extending Android - What will and will not work
- How best to integrate a third-party JAR
third-party Twitter API
with JARs wrappers
- Introduction to Android NDK Creating Simple program using
Day2 : Android NDK - A Note About When to Use NDK Android NDK .
- Creating the Project
Programming - Adding Some C Code
- Calling Native From Java
- Adding the Native Code Make File
- Compiling the Native Code
- Running the Code
- Adding Another Native Function
- Intel x86 Fundamentals Writing simple Device Driver
Day3: Device Driver - Linux Kernel source tree
- Character, Block device drivers
Programming Part I - Memory Management
- System Call hooking Writing device driver for the
Day4: Device Driver - Kernel Threading and synchronization external device.
- Virtual File System driver
Programming Part II
Day5: Hands On
Continue same Project
Small Project based on the knowledge gained during this Module.
Module 8 – Game Engine Anatomy Part I
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
a. Application Framework Compiling codes of COCOS 2D
Day 1 : Introduction to Game Game samples
Engine Anatomy b. Game State Manager
c. Graphics Engine : Introduction
Texturing , Animation , Physics Engine , Audio Engine , Player Input , Game
Logic
a. Texturing Writing program to add texture
Day2 : Graphics Engine - Texturing Pixel, Textures and Images , Transparency , Texture Blending , Rotation, in the game.
Clipping
Rotation Writing program to add and
Day3: Graphics Engine - Rotation Two-dimensional animations:sprites , Three-dimensional animation:Models, animate sprites/character in the
Animation Controllers , Particle Systems , Culling , Texture sorting , Texture files program.
, Resource management , Level of detail
a. Collision detection versus collision resolution Write program which simulate 2D
Day4: Physics Engine : Part I Collision detection.
b. Two-dimensional collision detection
Day5: Hands On
Continue same Project
Small Project based on the knowledge gained during this Module.
Module 9 – Game Engine Anatomy Part II
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
a. Three-dimensional collision detection Write program which simulate 3D
Day 1 : Physics Engine : Part II Collision Detection.
b. Collision resolution
Sound samples , playing sound , Multichannel sound , Music versus SFX, Write program which gives Multi-
Day2 : Audio Engine Output devices and interruptions Channel sound Output.
a. Touch events Write a program to handle touch
Day3: Player Input event in game.
b. Resolving into high-level events
a. High-level events Write a simple Game Logic
Day4: Game Logic program.
b. Artificial intelligence
c. Transparent suspend and resume
d. Frame-based versus time-based logic
e. Game logic Organization
Day5: Hands On
Continue same Project
Small Project based on the knowledge gained during this Module.
Module 10 – 2D Game Engine Part I
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
a. Feature List Design an addictive game.
Day 1 : Game Design
b. User Input Scheme
c. Learning curve : Level1, Level2, Level3, Level4 etc..
a. Unique Tiles Write a program which render
Day2 : Tile Engine the set of Game.
b. Drawing Tiles
c. TileWorld Class : Loading, Rendering, Camera and Physics
a. Property list Write a program which do
Day3: Animation and sprite different type of animation to
b. Animation Class sprite.
Classes
c. Sprite class
a. Entities Write different types of physics
Day4: Physics simulation to a 2D Game.
b. Entity-to-World
c. Special Tiles
d. Entity-to-Entity
gsEmuLevel , TileWorld
Day5: Level 1 Writing Level 1 of assigned Live
Main Character - Entity, gsEmuLevel and User Input project Game
Implementation
Emu Chicks - Entity, gsEmuLevel
Emu Mother , Game Logic , Sound
Module 11 - 2D Game Engine Part II
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
gsLionLevel , TileWorld , McGuffin , Main Character , Lion Entities : Entity and Writing Level 2 of assigned Live
Day 1 : Level 2 Implementation gsLionLevel , Sound project Game
gsMazeLevel , TileWorld , Buttons , Doors , Cat and Mouse , User Input Writing Level3 of assigned Live
Day2 : Level 3 Implementation project Game
Game Logic : Initialization, Context action, update
Sounds
gsRiverLevel , TileWorld , Crocodiles , Logs , Tom , User Input Writing Level 4 of assigned Live
Day3: Level 4 Implementation project Game
Game Logic : Initialization, Update
Sounds
Initialize Storage Writing program to serialize the
Day4: Game State Game State.
End Game
Serialization
Modify UI
Day5: Using COCOS2D to
Developing sample game using Cocos2D Continue same Project
Develop Game
Module 12 - 3D Game Development
Total Hours = 20 Hours
Days/Topics Theory Scope Lab Session
Duration : 2 Hours Duration : 2 Hours
Mode : Presentation Mode : Code
GLESGameState3D Class Writing Program to change the
Day 1 : OpenGL ES behavior of 3D character
POWERVR : Vectors and matrixes, Model format, 3ds Max Plug-in through Accelerometer.
Sprite3D
Accelerometer
a. Graphics : Ship, Hoops, Skybox, Particle System, 2D Element Designing a Set of 3D Game.
Day2 : 3D Game Design
b. Input : Accelerometer, Thruster
c. Camera
d. Logic
a. Camera Writing a code to implement
Day3: Implementation I Camera, skybox, input and Rings
b. Skybox in 3D Game.
c. Input - Calibration, Thrusters
d. Rings - Layout , Implementation
a. Particle System Writing a code to implement
Day4: Implementation II Particle system, Logic, Best Times
b. Logic and Ending Game.
c. Best Times
d. End Game
Day5: Using 3D Game
Developing sample game using 3D Game Engine Continue same Project
Engine to Develop Game