Course Description
This 5-day Android Programming training course is intensive and hands-on. It teaches software developers how to develop activities, services, content providers, and broadcast receivers for the Android platform. Students will first learn how to create activities using views, layouts, dialogs, and menus. Next, they will learn about intents, broadcast receivers, and services. Coverage of data storage follows with chapters on preferences, files, SQLite, data adapters, and content providers. Finally, the course ends with coverage of location-based services and application publishing.
Pre-requisites
Attendance at our Java Programming Introduction training course or equivalent experience is required. A basic understanding of Java threads, Java inner classes and XML is also recommended.
Who is this course for?
For experienced software developers who will be developing or maintaining applications for the Android platform.
Further Training
After some further on-the-job programming experience with the C language, we recommend students attend our
Java Programming Advanced training course to gain higher-level skills in the usage of Java.
Course content
Getting Started
Android Architecture
The Dalvik VM
Android Components
Android Installation
SDK Platform-tools & the SDK Manager
Eclipse & the ADT Plugin
A Simple Android Application
The Android Emulator
User Interface Layouts
Android Event Handlers
LogCat
Activities
Activity Lifecycle
Callback Methods
Resource Conservation
Intents
AndroidManifest.xml
Packaging
Resources
R.java
String Resources
StringArrays
Boolean & Integer Resources
Color & Dimension Resources
Style Resources
Image Resouces
System Resources
Localization
Format Strings
Views & Event Handlers
Common Properties
Text View
Edit Text
TextChanged Events
Button
Check Box & Toggle Button
Radio Group & Radio Buttons
DatePicker
ProgressBar & RatingBar
Threads & Handlers
AsyncTask
Layouts
Inflation
LinearLayout
FrameLayout
RelativeLayout
Table Layout
Combining Layouts
Scrolling
Screen Orientation Changes
Graphical Layout Tool
Fragments
Creating a Fragment
Add a Fragment to an Activity via XML
Add a Fragment Programmatically
BackStack
Alternative Layouts
Fragment Lifecycle
ListFragment
The Android Support Library
Dialogs
Custom Toast
Dialogs
AlertDialog
AlertDialog Buttons
Dismissing a Dialog
AlertDialog Items
Event Notifications
Custom Dialogs
ProgressDialog
DatePickerDialog
Menus
OptionsMenu
Reacting to Menu Item Selections
ContextMenu
Contextual Action Mode
Defining Contextual Actions
Popup Menu
Submenus
CheckBoxes & Radio Buttons in Menu Items
Intents & Broadcast Receivers
Explicit Intents
Passing Extra Data to an Intent
Activities with Results
Implicit Intents
Intent Types & Categories
Intent Filters
Intent Filter Actions & Categories
Intent Filter Data
Broadcast Receivers
Registering Broadcast Receivers
Programmatically
Registering Broadcast Receivers via the Manifest
Broadcasting Intents
Services
Defining a Service: Extend IntentService
Defining a Service: Extend Service
Registering and Starting a Service
Stopping a Service
Creating a Bound Service
Binding to a Service
Remote Bound Services
Call a Remote Service
Service Lifecycle
Notifications
Creating a Notification Builder
Configuring a Notification Builder
Pending Intents
NotificationManager
Updating a Notification
More Notification Properties
Data Storage: Preferences & Files
Preferences
Creating Preferences
Reading Preferences
Updating and Deleting Preferences
Using PreferenceScreen
PreferenceActivity and PreferenceFragment
Working with Files
openFileInput() and openFileOutput()
The cache Directory
ExternalStorage
RawResource Files
Data Storage: SQLite Database
Android SQLite Classes
Executing SQL Statements
The raw query() & query Methods
Cursors
Managed Cursors & LoaderManager
Encapsulate Data Access with an Adapter
Using SQLiteOpenHelper
Managing Database Upgrades
Inserting & Updating Data
Deleting Data
Transactions
Data Adapter Widgets
Adapters
ArrayAdapter
CursorAdapter
SimpleCursorAdapter
ListView
ListActivity
AdapterView Events
Spinner
AutoCompleteTextView
Grid View
ViewPager & PagerAdapter
The ViewHolder Pattern
Implementing a Content Provider
Content URI and MIME Types
Implement the ContentProvider Interface
Sharing Your Data
Registering your Provider & Permissions
Accessing Contacts & Other Android Providers
Accessing Content Providers
Content URIs
LoaderManager & CursorLoader
Settings
Browser & Call Log
MediaStore
Contacts
Using ContactsContract
Location-Based Services
Registering a LocationListener
Location
Permissions
Determining Distance & Bearing
Geocoding & Reverse Geocoding
Proximity Alerts
Using Google’s Map Service
Google Maps Android API
Displaying a Google Map with MapFragment
GoogleMap Gestures & Events
LatLng & the GoogleMap Camera
Markers & BitmapDescriptors
Polylines & Polygons
Publishing an Application
Packaging & Signing
Distribution
Updates