German English

Professional Android Development

Duration Duration
4 days Software developers
and architects

Training overview
This intensive training course introduces you to the Android development based on real application examples for for both tablets and smartphones. Learned knowledge is immediately used for the development of a comprehensive training example. You will receive comprehensive courseware.

Training prerequisites
Knowledge of Java programming is assumed. After registering for the training you will receive preparatory material that you may be able to use in order to freshen up your Java knowledge.

For the open training we ‚Äč‚Äčorganize the location, as well as the food and beverages during the training. Laptops can be provided on request.

Customer reviews

Self-study portal

Language Price
Android Development in the vogella interactive Learning Portal English 200 EUR *


* Annual fee for the first year. For each additional year, the annual fee is 40 EUR. All prices are listed w/o VAT.

Onsite Training

Place Date Language Price
At your location tbd German / English Upon request


* We offer an early bird discount for registrations up to 6 weeks before the beginning of the training and a colleague discount starting from the second registration. All prices are listed w/o VAT.
Agenda Download Agenda

Android Architecture

  • System architecture and Android Components
  • Important configuration files

Building user interfaces development

  • Views and Layouts
  • View interaction
  • Component lifecyle

Component communication via Intents

  • Intents and intent filter
  • Android component integration via intents

Using Gradle as the Android build system

  • What is Gradle?
  • Running a headless build
  • Defining dependencies
  • Extending the build system

Using Libraries

  • Using Java and Android libraries
  • Using the support library
  • Targeting Android 2.x with compatibility libraries

Multi-screen and multi-pane development

  • Screen sizes and densities
  • Resource selectors
  • Multi-pane layouts with fragments
  • Designing layouts for tablets and phones

Using the toolbar

  • User interaction concepts
  • Defining and using actions
  • Using the Toolbar

Displaying lists and grids

  • Using RecylerView and ListView
  • Performance optimization tips

Styling and Themes

  • Using existing styles and themes
  • Creating own themes
  • Material design


  • Android security concept
  • Using and defining permissions

Asynchronous processing in Android

  • Multitasking in Android
  • Using Handler for message communication
  • Using AsyncTask

Network Communication

  • Accessing the Internet
  • Processing JSON and XML
  • Efficient image downloading with external libraries
  • Optimizing network access with libaries like OkHttp, GSon, Moshi
  • Accessing REST based webservices with Retrofit

File based persistence

  • Preferences
  • File and Access restrictions
  • Permissions

Database persistence with ORM and Room

  • Using the SQLite database
  • Using the Room library for simple and fast persistence


  • Using Android system services
  • Defining local services
  • Communicating with services
  • Outlook: Definition cross component communication

Event processing via broadcast receiver

  • Androids event system
  • Registering broadcast receiver for system events
  • Registering and triggering custom events


  • Using the notification manager
  • Building rich notifications

The Android lifecycle

  • Application lifecycle
  • Activity lifecycle
  • Fragments lifecyle
  • Service lifecyle
  • Using the ViewModel and LiveData libraries for view data persistence

Custom widgets and the canvas API

  • Defining custom widgets
  • Compound widgets
  • Canvas API
  • View state persistence


  • Deployment to Google Play
  • Deployment Options

Outlook: Important libraries and trends in Android development

  • Using Kotlin
  • Using Dagger 2 for dependency injection
  • Using RxJava