This course is intended for experienced developers who wish to learn how to develop applications for the Android operating system from Google. Students will build various small example app, service, and widget projects and also work up larger case-study applications involving various UI-design techniques. We work primarily with Android 2.3, but also look ahead to some features and development styles for Android 3.x and 4.0. While this is an introductory course, we make a point of focusing 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. This course paves the way for see Course 252, Intermediate Android Development, which covers network, inter-process communication, media, maps and location, and more. For a faster-paced course that runs from introductory to intermediate level, you might also consider Course 255, Android Development.


Before attending this course, students must have experience with Java programming. It is beneficial to also have had exposure to related technology including web applications, user-interface design, SQL, XML, and web services.


This course is for students who wish to get up to speed with writing apps for Android devices.


Upon completion of this course, students will be able to:

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


After completion of relevant topics Participants select one project that should be provided by Backstreets Technologies Project Manager. Project is based on Android Application.