Training » Categories » Android » Android Bootcamp

Course Summary

Android™ Bootcamp Training Course is a hands-on guide to designing and building mobile applications using Google's Android™ open-source platform. The course explains what Android™ is and how it compares to other mobile environments, the setup of the Android™ Eclipse-based development tools, the Android™ SDK, all essential features, as well as the advanced capabilities and APIs such as background services, accelerometers, graphics, and GPS. This complete hands-on course encourages students to learn by building increasingly more sophisticated and meaningful mobile applications for Android™ phones. By the end of the course, each participant will build their own complete Android application incorporating most of the key aspects of the platform. Typically, we build a Twitter app for Android, but there are other choices depending on participants' interests.

Duration

5 days.

2 course(s)

Objectives

Upon completion of this course, you will be able to:

  • Build your own Android apps
  • Explain the differences between Android™ and other mobile development environments
  • Understand how Android™ applications work, their life cycle, manifest, Intents, and using external resources
  • Design and develop useful Android™ applications with compelling user interfaces by using, extending, and creating your own layouts and Views and using Menus.
  • Take advantage of Android's APIs for data storage, retrieval, user preferences, files, databases, and content providers
  • Tap into location-based services, geocoder, compass sensors, and create rich map-based applications
  • Utilize the power of background services, threads, and notifications.
  • Use Android's communication APIs for SMS, telephony, network management, and internet resources (HTTP).
  • Secure, tune, package, and deploy Android™ applications

Audience

This course is designed for software developers interested in designing, creating, deploying, and testing applications for the Android™ mobile phone platform. It is valuable to both novices and gurus, who already have experience in developing mobile applications for other platforms. Java experience is required to get the most benefit from this training.

Additional Notes

Android SDK Version

This course is constantly updated for the latest Android SDK, but the instructor will discuss differences between releases as well.

Trademark Notice

Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.

Outline

Intro to Android   (3 days)

Android Stack

  • Overview of the stack
  • Linux kernel
  • Native libraries
  • Dalvik
  • App framework
  • Apps

SDK Overview

  • Platforms
  • Tools
  • Versions

Hello World App

  • Creating your first project
  • The manifest file
  • Layout resource
  • Running your app on Emulator

Main Building Blocks

  • Activities
  • Activity lifecycle
  • Intents
  • Services
  • Content Providers
  • Broadcast Receivers

Basic Android User Interface

  • XML versus Java UI
  • Dips and sps
  • Views and layouts
  • Common UI components
  • Handling user events

Android System Overview

  • File System
  • Preferences
  • Notifications
  • Security model

Advanced UI

  • Selection components
  • Adapters
  • Complex UI components
  • Building UI for performance
  • Menus and Dialogs
  • Graphics & animations

Multimedia in Android

  • Multimedia Supported audio formats 
  • Simple media playback 
  • Supported video formats 
  • Simple video playback

SQL Database

  • Introducing SQLite 
  • SQLiteOpenHelper and creating a database 
  • Opening and closing a database 
  • Working with cursors Inserts, updates, and deletes

Basic Content Providers

  • Content provider MIME types
  • Searching for content
  • Adding, changing, and removing content
  • Working with content files

Advanced Android   (2 days)

Custom Content Providers

  • Why Content Providers
  • Where the content comes from
  • Implementing the API Supporting content files

Location Services

  • Working with the Location Manager
  • Working with Google Maps extensions

Services

  • Overview of services in Android
  • Implementing a Service
  • Service lifecycle
  • Bound versus unbound services

Broadcast Receivers

  • What are Broadcast Receivers
  • Implementing broadcast receiver
  • System broadcasts and how to use them

Intent Filters

  • Role of filters
  • Intent-matching rules
  • Filters in your manifest
  • Filters in dynamic Broadcast Receivers

Networking

  • Working with web services
  • Best practices

Sensors

  • How Sensors work
  • Listening to Sensor readings
  • Best practices for performance

WiFi

  • Monitoring and managing Internet connectivity 
  • Managing active connections 
  • Managing WiFi

Telephony

  • Making calls 
  • Monitoring data connectivity and activity 
  • Accessing phone properties and status 
  • Controlling the phone

Camera

  • Taking pictures
  • Rendering previews

Bluetooth

  • Controlling local Bluetooth device 
  • Discovering and bonding with Bluetooth devices 
  • Managing Bluetooth connections 
  • Communicating with Bluetooth

Automated Testing

  • Why automate tests
  • Instrumentation and unit testing