Android Application Development

Buy Now

Course Description

Course Results

Products Supported

Who Should Attend

Course Format

Please see course datasheet for further details here Buy Now

Course Details Summary

  • Duration: 3 Days
  • Course Information: View
  • Format: Lectures and Labs
  • Type: Instructor-led
  • Price/Schedule: View

The Android Application Development training course provides engineers with the knowledge and skills to use Android in embedded systems development. Attendees get an in-depth look at how to set up for Android development and quickly start creating applications and appliances that run this platform.

After this course, students will be able to do the following:

  • Explain how Android technology is used in embedded platforms.
  • Set up and use the Android Development Tools (ADT) and Android software development kit (SDK).
  • Deploy code to both the Android emulator as well as Android-based devices.
  • Use a broad range of Android APIs including multimedia, location services, power management, 2D and 3D graphics, user interface events, and much more.
  • SDK Platform Android 2.2, API 8
  • Engineers and developers who are interested in creating embedded systems based on Android technology

Day 1

Introduction to Android

  • Android History
  • Open Handset Alliance
  • Android Architecture
    • Android Architecture
  • Android and Linux
  • Android Security Concepts

Setting up for Android Development

  • Platform Requirements
  • Virtual Targets vs. Real Targets
  • Lab: Setup of Development Environment

Building/Debugging Code for Android

  • Android's Version of Java
  • Dalvik VM vs. J2SE VM
  • Lab: Android Development in Eclipse

Day 2

Structure and Life Cycle of Applications

  • What Makes an Android Application?
  • Applications Spanning Activities
  • Activity Life Cycle
  • Lab: Adding Application Resources

Key Android Services

  • Understanding "Intents"
  • Activities and Intents
  • Dynamic String Substitution for Localization
  • Lab: Using Intents

Graphics in Android

  • Android Graphics Support for 2D and 3D
  • Drawing with XML
  • OpenGL 3D Graphics Support
  • Lab: Graphics

User Interface Events

  • Event Listeners
  • Widgets and Battery Utilization
  • Lab: User Interface Events

Telephony Support

  • Telephony Basics
  • CDMA vs. GSM vs. LTE
  • Sending/Receiving SMS Messages
  • Lab: SMS Message Handler

Day 3

Sound and Multimedia Support

  • Android Sound Architecture
  • Multimedia Framework
  • OpenCORE Architecture
  • Audio and Video Recording
  • Lab: Audio

Location Services

  • Course-Grain vs. Fine-Grain Location Services
  • GPS-Based Location Requirements
  • Lab: Location

Bluetooth Services

  • Bluetooth Protocol Stack
  • Enabling Bluetooth in the Android Manifest
  • Bluetooth Socket and Thread Example

Platform Integration

  • Making Linux Devices Available to Android
  • Managing Sensors
    • Accelerometers, Digital Compass, etc.
  • Integrating into libsensors
  • Power Management
    • Driver-Space Wake Lock API
    • User-Space Wake Lock API
    • Wake Lock Types
    • Power Management Callbacks
  • Android Native Development Kit (NDK)
    • How NDK Works
    • NDK Platform Requirements
    • Debugging Native Code
  • Porting Android
    • Supporting Linux
    • Integrating LCDs
    • Sound and Graphics Services
  • Android Boot Sequence
    • init Language

Getting Your Application into the Android Marketplace

  • Signing Your Application
  • Debug vs. Release Mode of Applications
  • Adding Your Key and Setting up a Google Account
  • Charging for an Application
    • Revenue from Advertising
    • Fees for Applications
    • Supporting Your Customers
  • Lab: Deploying Your Application

Summary

  • Where We've Been
  • Where to Next
  • Suggested Resources
  • Android Reference Books

Prerequisite Courses

  • None

Prerequisite Skills

  • Familiarity with embedded systems and software development concepts
  • Basic understanding of C++ or Java languages and object-oriented development
  • Some familiarity with Linux or Unix-based commands preferred
  • This three-day instructor-led course consists of lectures and lab sessions.
  • Students receive personal guidance from expert Wind River instructors.
  • Students use ADT, Android SDK, Eclipse editor, and QEMU-based Android emulator to gain experience with the topics presented.
  • Lab sessions allow hands-on application of course concepts.
Subscribe to Wind River