Android Bootcamp Training Course
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


