Consulting Training Blog Careers About Us Contact Us

Android 3 Development Training

Course ID: WAS1921
Duration: 5 Days

Upcoming Classes

Sorry, nothing scheduled right now. Click the Get Notified button below to be alerted when a class is scheduled.

Get Notified

On Site/Private

Can't find a class that fits right for you? Contact us to inquire about scheduling your own private class

Contact Us

Description

Android is an open source platform for mobile computing.  Applications are developed using familiar Java and Eclipse tools.  Many vendors and carriers offer Android based devices (phones).  Android is enjoying a healthy growth, in terms of hand set sells, applications available and new project starts.  This course teaches students the architecture, API and techniques to create robust, high performance and appealing applications for the Android devices.  In this class, students will work with Android 4.  While many classes focus on the mobile device, this course also deals with the server side architecture.  This makes the class ideal for enterprise class businesses.

Bring This Course To You

For groups of 5 or more, let Intertech bring this course to your location. Customized versions tailored towards your objectives are also available.

Learn More

Learning Objectives

During this course, students will learn:

  • The architecture of Android OS
  • Using the Eclipse based development environment
  • GUI development
  • Supporting multiple languages
  • Accessing data from files, network and SQL database
  • Audio and video playback
  • Automated testing of your applications
  • Selling your applications in Android market

Audience

Developers and architects who will be developing applications for Android devices.

Prerequisites

Basic knowledge of Java.  Familiarity with Eclipse is a plus but not necessary.

Course Outline

Introduction to Android

  • What is Android?
  • A Short History
  • Advantages of Android
  • Disadvantages of Android
  • Q3 2011 Global Sales Share
  • 2011 US Only Market Share
  • Android Carriers
  • References

The Architecture of Android 

  • Key Components Stack
  • The Kernel
  • Libraries
  • The Dalvik JVM
  • Application Framework
  • Applications

 
 

The Development Environment

  • What do We Need?
  • Setting Up the SDK
  • Install Eclipse Plugin
  • Create a Virtual Device
  • Creating a Project
  • Running Your Application
  • Android Hardware Buttons
  • Run Configuration
  • Debugging an Application
  • Using Third Party JAR
  • Creating Reusable Library
  • Dalvik Debug Monitor Server (DDMS)
  • DDMS Tools in Eclipse
  • The Console Views
  • Developing for Multiple Android Versions 


 

Application Fundamentals

  • Recapping the Basics
  • Packaging an Application
  • Application Reusability Architecture
  • The Manifest File
  • Activity
  • Creating an Activity Class
  • Activity Lifecycle
  • Launching an Activity
  • Pausing and Stopping an Activity
  • Destroying an Activity
  • Saving State
  • Creating Views
  • Registering an Activity
  • The Default Activity
  • Process Lifecycle
  • The Application Class
  • The Application Context 

 

Basic GUI Programming

 

  • The Fundamentals
  • View Hierarchy
  • Creating Views Programmatically
  • Creating View in XML Layout
  • More on XML Layout
  • Common Programming Tasks with Views
  • TextView and EditText
  • Button
  • CheckBox
  • RadioButton and RadioGroup
  • ToggleButton
  • ImageView
  • RatingBar

 

Layout Management 

  • Background
  • LinearLayout
  • LinearLayout Orientation
  • match_parent (fill_parent) Example
  • Layout Gravity
  • Weight
  • TableLayout
  • Managing the Width
  • RelativeLayout
  • ScrollView
  • HorizontalScrollView

 

Resource Management and Localization 

  • Main Types of Resources
  • Defiining Value Resouces
  • Defining String Arrays
  • Creating Image Resource
  • Alternate Resource Folders
  • Alternate Folder Name Rules
  • How Android Finds Resources
  • Dealing with Screen Orientation
  • Orientation Change and Activity Lifecycle
  • Developing for Tablets
  • Basics of Localization
  • Testing for Localization
  • Loading Localized String from Code

Intents and Intent Filters 

  • What is an Intent?
  • The android.content.Intent Class
  • Explicity Specifiying Component's Class
  • Implicit Target Component Specification
  • Intent Filters
  • Data Type Filter
  • Action Name
  • Category Name
  • Hint Matching Logic
  • Default component of an Application
  • Starting an Activity
  • Getting Output from Activity
  • Pending Intent

Application Menu

  • Defining Menu Items
  • Menu XML File
  • Option Menu
  • Populating Menu Items from Resource
  • Manipulating Menu Items
  • Handling Menu Item Click Event
  • Context Menu
  • Showing a Context Menu
  • Handling a Context Menu Item Click

 

Showing Notification Messages

  • Toast
  • Popping a Toast
  • Advanced Toast
  • Status Bar Notification
  • Advantages of Status Bar Notification
  • Steps to Create a Status Bar Notification
  • Posting the Notification
  • Using a Utility Method
  • Using Dialogs
  • Alert Dialogs
  • Handling Button Click Events
  • ProgressDialog
  • Setting Progress Amount

 

Advanced GUI Development 

  • Spinner View
  • Creating a Spinner
  • Handling Item Selection Event
  • The ListView
  • Creating a Listview
  • Handling ListView Events
  • The Adapter Model
  • Custom Adapter Class
  • Using an Adapter
  • Using a Custom Row Layout
  • ViewFlipper
  • Tabbed UI Layout
  • Creating Tabbed UI
  • Defining the Tabbed Layout
  • Creating the Tabs with View Content
  • Add a Tab with Activity Content
  • WebView
  • WebView Methods

 

Data Storage 

  • Data Storage Options
  • Data Privacy
  • Shared Prefereances
  • Modifying Shared Preferences
  • Default Preferences
  • Editing Preferences
  • Internal Storage
  • Private Directory
  • Cache Directory
  • External Storage
  • Checking State of External Storage
  • Working with Files in External Storage
  • Shipping Files with the Application
  • Working with Raw Resource Files
  • Working with Asset Files

 

SQL Database Storage 

  • Opening a Database Connection
  • Transaction Management
  • A Pattern for Connection and Transaction Handling
  • Creating Schema
  • Compiled SQL Statement
  • Inserting Data
  • Updating Data
  • Deleting Data
  • Fetching Data
  • Example Queries
  • Iterating Over a Cursor
  • Reading Column Values from Cursor
  • Cursor Management
  • Binding Cursor to ListView
  • Custom Data Binding
  • Handling Item Click Event
  • Refreshing the ListView
  • Schema Creation Issues
  • Using the Helper Class

Content Provider

  • Use of URL
  • The Structure of Data
  • MIME Type
  • Creating a Content Provider
  • Implement the query () Method
  • Implement the insert() Method
  • The update() and delete() Methods
  • Implement getType()
  • Registering a Provider
  • Writing a Data Consumer
  • Performing a Query

 

Network Programming

  • Communication Using HTTP Protocol
  • Creating a HttpClient Object
  • Making a GET Request
  • Making a POST Request
  • Setting Timeout
  • Using Basic Authentication
  • Using Custom Authentication
  • XML Parsing Options
  • Setting up XML Pull Parser
  • The Main Loop
  • Checking Network Status

Background Task Processing and Service 

  • The Handler Framework
  • The Basic Approach
  • Creating a Handler
  • Posting a Message
  • Doing Background Work
  • AsyncTask
  • Callback Methods of AsyncTask
  • Doing the Work
  • Starting Work
  • Getting Result from the Task
  • Updating GUI from the Task
  • Ending the Task
  • What is a Service?
  • Creating a Service
  • Starting and Stopping a Service
  • Starting Long Running Work
  • Sending Control Messages to a Service
  • Usability Guidelines

 

Multimedia Programming 

  • Recording Audio
  • Start Recording Audio
  • Stop Recording
  • Playing Audio
  • Playing from Raw Resource
  • Playing from a File or Network Stream
  • Stopping and Cleanup
  • Video Playback
  • Playing Video

 

Broadcast Receiver

  • Developing a Broadcast Receiver Component
  • Registering a Receiver
  • Broadcasting a Custom Intent

Location Based Services

  • Guidelines for Obtaining Current Location
  • Obtaining Current Location from an Activity or Service
  • Reading Location Data
  • Other Considerations
  • Proximity Alert
  • Geocoding
  • Using MapView
  • Setting up the Project
  • Showing MapView from an Activity

Android Telephony API

  • Common Uses of Telephony API
  • Making a Phone Call
  • Sending SMS Message
  • Call and Service State
  • Monitoring Call and Service State
  • Register the Listener
  • Getting Detail Phone Information

Testing Applications

  • New Sources of Defects
  • Special Testing Considerations
  • Android Testing Framework
  • The Architecture
  • Creating a Test Project
  • Test Case Class for an Activity
  • Test Case Initialization
  • Writing a Test Case Method
  • Service Test Case Class
  • Running Test Cases
  • Useful Methods of an Activity Test Case Class
  • Additional Assertion Function
  • The TouchUtils Class
  • Developing and Testing on a Device
  • Stress Test Monkey
  • Third Party Testing Tools

Intertech delivers a full suite of mobile cross platform consultingiPhone consultingAndroid Consulting, and Windows Store/Phone consulting.

Free Resources from Intertech

Free eBook: Android Wear Development Tutorial

Free Guide: Creating Mobile Apps with Xamarin.Forms

Free Whitepaper: Saving and Retrieving Android Instance State

X