Training Categories
Click on a link to see more about each course.
Course Outline
Dates Offered (click on the desired date to register):
This course is currently not scheduled for the near future.
Developing Applications for the Android Platform
Course Number: ANDROID2
Course Description: This intensive 4-days hands-on training course is designed for developers who wish to design and build mobile applications using Google's Android Application Development Framework. The following features will be covered: development environment, and tools; the setup of the Android Eclipse-based development tools, the Android SDK, all the essential features to create basic, and advanced applications using services, accelerometers, graphics, Internet access, multimedia, mapping, and GPS.
Objectives:
- Describe all the components of the Android Platform
- Create Android User Interfaces (activities)
- Connect Android applications to the Internet using APIs for networking and Internet resources (HTTP, HTTPS, FTP, etc)
- Publish data to Android applications through a content provider
- Use Content Providers
- Use data that other applications provide through their content providers
- Build long-running Android processes using services
- Use advanced Android features such as GPS access, mapping, and search
- Create Android Applications by using. Extending and creating layouts and Views.
- Accessing Phone Hardware using the Android API (sensors, gps, wifi, etc)
- Use background services, threads and notifications.
- Create and uses resources in an Application using the Android API.
- Package and deploy Android applications
- Use the Android API to access data storage, user preferences, files and databases
Benefits:
Target Audience:
Prerequisites:
Participants should have a working knowledge of Java programming, developing graphical user interfaces, and a working knowledge of Linux (as a Linux User).
Course Length: 4 days
CourseTopics:
Android – The Big Picture
· Android architecture
· Android Libraries
· Android Runtime
· Overview of the Android development environment
· Android application model
· Android application building blocks
· Application design guidelines
Getting Started
· Overview of Android and Android SDK
· Getting to know your Android development environment
· Setting the Android environment
· What is Android made of
o Activities
o Intents
o Services
o Content Providers
· Resources for the phone
o Storage
o Network
o Multimedia
o GPS
o Phone Services
Project Structure
· Root Contents
· Project Files
· The Manifest
· Writing your first Android application
o The Activity
o Part of the Activity
· Building, Running and debugging your application
· Working with Android simulator
· Test your application on device
Using XML-Based Layouts
§ What is an XML-Based Layout?
§ Why use and XML-Based Layout
§ How does it work
§ Building custom views and layouts
Building User Interface
· Overview of Android's view structure
· Android built-in layouts
· Android built-in Views
· Event handling
· Using Basic Widgets
o Labels
o Button
o Images
o Radio and Check buttons
· Working and using Containers
o Concepts and properties
o Linear
o Tabular
o Relative
o Absolute
· Using Selection Widgets
o Adapters
o List
o Spin
o Grid
o Tabs
· Using Menus
o Different type of Menus
o Android Menu System
o Defining an Activity Menu
o Dynamically Updating Menu Items
o Handling Menu Selections
o Submenus and Context Menus
· Using pop-up messages
· Embedding the WebKit Browser
Building Android Applications
· AndroidManifest.xml file - the control file
· Building activities
· Intents
o Introduction to Intents
o Using Intents to launch Activities
o Using Intents to Broadcast Events
· Building and using services
· Notifications
· Building and using content providers
· Using Libraries
o Using Jar files
Data Stores
· Overview of storing, retrieving, and exposing data
· Preferences
· Files
· Managing and Accessing Local Databases
· SQLite Databases
· ContentProviders
· Data access over the network
Resources and I18N
· Overview of resources in Android
· Creating resources
· Using resources
· Drawable resources
· Animation resources
· Using resources for different languages
Communicating via the Internet
§ HTTP
§ Parsing Responses
§ Networking
Creating Intent Filters
§ What is an Intent Filter
§ Parts
§ Intent Routing
§ Narrow Receivers
Using a Content Provider
§ What is a Content Provider
§ Making queries
§ Handling a Content Provider
§ Building a Content Provider
§ Create a Provider Class
o Content Provider
o DatabaseContentProvider
o OnCreate()
o
§ Parts
§ Properties
§ Updating the Manifest
Creating a Service
§ Parts of a Service
§ Implementing a Service
§ Implementing the Interface
§ Modifying your Manifest file
§ Invoking a Service
§ Connecting to a Service
Android Security Model
· Overview of Android security architecture
· Signing application packages
· User IDs and access control
· Using, declaring and enforcing permissions
· URI permissions
Android Media API
· Playing audio/video
· Media recording
· Using the Camera
o Controlling Camera Settings
o Using the Camera Preview
o Taking a picture
Building Location Based Applications
· Where am I
· LocationManager
· Integrate with GoogleMap
Accessing Android Hardware
§ Introducing the Sensor Manager
§ Using the Accelerometer and Compass
o Introducing Accelerometers
o Detecting Acceleration Changes
o Creating a Speedometer
§ Using Bluetooth
o Introducing the Bluetooth Service
o Controlling the Local Bluetooth Device
o Managing Bluetooth Connection
o Communicating with Bluetooth
o Using a Bluetooth Headset