Intermediate Android Training – 4 Days

Course Description

The Intermediate Android Training course flows directly from Introduction to Android Development, to guide students through an exploration of some of the more sophisticated capabilities of the Android OS and to empower them to build polished Android applications, activities, and services.

Like its precursor, this course focuses on practical concerns faced by the corporate IT developer. The primary case-study application connects popular mobile features such as maps and multimedia with a RESTful web service and a JPA persistence tier that connects to a fully-worked enterprise database (15 tables, 998 rows). The mobile side of the application includes 47 Java classes and 8 distinct activities. Supporting applications provide overlapping exercise in key techniques such as using asynchronous tasks, communicating with external applications, and error-handling.

What You Will Learn

  • Store app-specific information in SQLite databases.
  • Make remote connections using HTTP, XML, and JSON, and take advantage of mapping and other web services.
  • Implement background work as asynchronous tasks.
  • Implement Android services for asynchronous notification, and integrate these services with applications.
  • Invoke external applications and services using implicit intents.
  • Manage audio, photo, and video content, and integrate built-in media applications in your own Android applications.
  • Integrate map views into your application, and provide custom overlays of map markers and other information.
  • Publish to app markets.


  • Java programming is excellent preparation.
  • Introductory knowledge of Android programming is required: “Introduction to Android Development,” or similar.
  • Exposure to related technology including web applications, user-interface design, SQL, XML, and web services, all are beneficial but none are required.


Chapter 1. Database Storage

  • SQLite
  • The SQLiteDatabase Class
  • The SQLiteOpenHelper Class
  • Installing Databases
  • The query Methods
  • Using Cursors
  • Database Updates

Chapter 2. Networking and Web Services

  • Apache HttpClient
  • Consuming RESTful Web Services
  • Building URLs
  • Parsing JSON
  • Parsing XML
  • Connected Applications
  • Offline Operation and Server Synchronization

Chapter 3. Asynchronous Tasks

  • The UI Thread
  • Background Tasks
  • Loopers and Handlers
  • Using AsyncTask
  • Using ProgressDialog
  • Error Handling

Chapter 4. Services

  • The Roles of Services
  • Invoking a Service
  • Do’s and Don’ts
  • Communication with the Application
  • Communication with Activities
  • Sending Notifications
  • Pending Intents
  • Downloaders
  • Polling Web Services

Chapter 5. Inter-Process Communication

  • Breaking Out
  • Using the Clipboard
  • Linkifying Text
  • Implicit Intents
  • Invoking Built-In Applications and Services
  • Accepting Implicit Intents
  • Passing Data
  • MIME Types

Chapter 6. Multimedia

  • Playing Sounds
  • Haptic Feedback (Vibrating)
  • Managing Images
  • Storage and Retrieval
  • Invoking the Camera
  • Invoking the Media Recorder
  • Gallery and other Image Views

Chapter 7. Location Services and Maps

  • Location Services
  • Location Notifications
  • The Google Maps API
  • License Terms and Maps API Keys
  • Map View and Map Activity Classes
  • Configuring a Map
  • Controlling a Map
  • Events
  • Projections
  • Map Overlays
  • Item Overlays
  • Custom Overlays

Chapter 8. Publishing

  • The App Market
  • Preparing Your App
  • Debug vs. Release Builds
  • Signing an APK File
  • Publishing Your Application
  • Application Metadata
  • Updates and Support

IDE Support: Eclipse Juno

In addition to the primary lab files, an optional overlay is available that adds support for Eclipse Juno. Students can code, build, deploy, and test all exercises from within the IDE. We make full use of the Android SDK and its Eclipse plugin and device emulators.

System Requirements

Hardware Requirements (Minimum)Core i5, 1.5 GHz, 4 gig RAM, 1 gig disk space.
Hardware Requirements (Recommended)Core i5, 2.5 GHz GHz, 8 gig RAM, 1 gig disk space.
Operating SystemTested on Windows 7. Course software should be viable on all systems which support a Java 6 Developer’s Kit.
Network and SecurityLimited privileges required.
Software RequirementsAll free downloadable tools.

Print Friendly, PDF & Email