Please contact us
for GSA pricing.

Contract #
GS-35F-0307T

Android Training: Introduction to Android Development

4.3 out of 5 ( 106 reviews)

Course Number: MBL-102
Duration: 5 days
view course outline

Android Training Overview

Accelebrate's Introduction to Android Development training class teaches experienced developers how to develop applications for the Android operating system from Google. The course below is current to Android 4.2.x but could be tailored to any Android version.

Location and Pricing

Most Accelebrate courses are delivered as private, customized, on-site training at our clients' locations worldwide for groups of 3 or more attendees and are custom tailored to their specific needs. Please visit our client list to see organizations for whom we have delivered private in-house training. These courses can also be delivered as live, private online classes for groups that are geographically dispersed or wish to save on the instructor's or students' travel expenses. To receive a customized proposal and price quote for private training at your site or online, please contact us.

In addition, some courses are available as live, online classes for individuals. See a schedule of online courses.

Android Training Prerequisites

No prior knowledge of the Android OS is required. However, all attendees should know the fundamentals of Java SE development, as taught in Accelebrate's Beginning Java Application Development course. This course could be tailored for an audience that has extensive object-oriented development experience in a similar language (C#, C++, etc.).

Hands-on/Lecture Ratio

This Android training class is 70% hands-on, 30% lecture, with the longest lecture segments lasting for 20 minutes.

Android Training Materials

All attendees receive comprehensive courseware and a related textbook.

Software Needed on Each Student PC

  • Windows, Mac, or Linux with at least 3 GB RAM (64-bit operating system and at least 4 GB RAM recommended)
  • Android Studio or Eclipse with the ADT plugin
  • Related lab files that Accelebrate will provide

Android Training Objectives

  • Understand the Android OS architecture.
  • Install and use appropriate tools for Android development, including IDE, device emulator, and profiling tools.
  • Understand the Android application architecture, including the roles of the task stack, activities, and services.
  • Build user interfaces with fragments, views, form widgets, text input, lists, tables, and more.
  • Use advanced UI widgets for scrolling, tabbing, and layout control.
  • Present menus via the Android action bar and handle menu selections.
  • Store application data on the mobile device, in internal or external storage locations.
  • Support user-specific preferences using the Android Preferences API.

Android Training Outline

  • The Android Operating System
    • Mobile Form Factors
    • Versions of Android
    • Applications and APK Files
    • Process Architecture
    • The Role of Java
    • Hello, Dalvik
    • What's In, What's Out
    • Services
    • User Interface
    • Memory and Storage
    • Operating-System Services
    • Inter-Process Communication
  • Android Development
    • The Android SDK
    • The SDK and AVD Managers
    • Configuring the Emulator
    • Eclipse
    • Resources
    • APK Files
    • Build Process
    • The R Class
    • Assets
    • The Dalvik Debug Monitor Server
    • The Android Debugger (adb)
    • Command Shells
    • The Android Log and LogCat
    • Ant
  • Applications
    • Activities and Fragments
    • Activity Lifecycle
    • The onCreate Method
    • Layouts and Views
    • The findViewById Method
    • Tasks and the "Back Stack"
    • Intents and Results
    • startActivity and Related Methods
    • Custom Application Classes
    • Shared Application State
  • User Interface Design
    • XML Layouts
    • Layout Parameters
    • The Box Model
    • Gravity
    • The LayoutInflater Service
    • The <LinearLayout>
    • The <RelativeLayout>
    • Views and Adapters
    • Form Widgets
  • Fragments and Multi-Form Design
    • The Fragments API
    • Fragment Lifecycle
    • Relationship Between Activity and Fragment
    • Possible Cardinalities
    • Communication between Activity and Fragment
    • Fragment Arguments
    • Callback Interfaces
    • Designing for Multiple Form Factors
    • Fragments on the Back Stack
  • Views, Adapters, and Dialogs
    • Styles and Themes
    • <include> and <merge>
    • View Orientation
    • Adapters
    • Dialog Fragments
    • Showing and Managing Dialogs
    • Using AlertDialog
  • Working with Text
    • The <TextView>
    • The <EditText>
    • Input Methods
    • Input Types: Phone, E-mail, Date, Time ...
    • DatePicker and TimePicker
    • Date- and Time-Picking Dialogs
    • Providing Auto-Completion
    • Using the Clipboard
    • Linkification
  • Working with Lists
    • AdapterView and Subclasses
    • Adapter and Subinterfaces
    • ListView and ListAdapter
    • ListFragment
    • Spinner and SpinnerAdapter
    • Handling Item Selection
    • Custom Adapters
    • ExpandableListView and ExpandableListAdapter
  • Working with Tables
    • The <TableLayout> and <TableRow>
    • Defining Table Cells
    • Static Table Layouts
    • Dynamic Tables
    • Binding Data
    • Using a Template Row
    • Managing IDs
  • Graphics and Low-Level Events
    • Drawing on a Canvas
    • The Paint Object
    • Handling Size and Orientation Changes
    • Handling Touch Events
    • Working with Drawables
    • Shape Drawables
    • Bitmap Drawables
    • 9-Patch Bitmaps
    • Custom Drawables
    • The Drawing Cache and Working with Bitmaps
  • Menus and the Action Bar
    • Options and Context Menus
    • The Action Bar
    • Menu Resources
    • The MenuInflater Service
    • The <Menu>
    • The Menu and MenuItem Classes
    • Handling Menu Selections
    • The Escape from switch/case!
    • Using a Dispatch Map
    • Building Menus Dynamically
  • Local Storage
    • The Android File System
    • Internal Storage
    • File Formats
    • Parsing JSON
    • Storage and the Application Lifecycle
    • External Storage
    • Private Storage vs. Public Media
    • Permissions
    • Checking for Availability
    • Preferences
    • Preferences Resources
    • The PreferencesFragment
    • The PreferencesManager
    • Reading Preferences
  • Conclusion