- Object-Oriented programming experience in a compiled language.
- Familiarity with SQL scripting is recommended but not required.
Configuring the Android Development Environment
- Understand the strengths of the Dalvik Virtual Machine, and how it differs from standard VMs.
- Install the Android Software Development Kit.
- Automatically generate programming documentation and API specifications with Javadoc.
- Accelerate software development with Eclipse IDE and the Android Development Tools (ADT) plug-in.
Developing Custom User Interfaces using Android
- Design highly-intuitive interfaces, forms and navigation controls.
- Enable users to sort lists of data and customize the way information is displayed.
- Give layouts a professional and consistent appearance quickly by using styles and themes.
- Create 'widgets' through which users can access an app from the home screen.
Building More Scalable Applications with Android Application Resources
- Use resources to separate text and images from application code for easier maintenance.
- Designate alternative resources to customize the content or layout to the specific device.
- Enable the Android app to handle changes smoothly, such as keyboard availability or screen orientation.
- Harness localized resources to tailor text, media and currencies to multiple languages and regions.
Streamlining Communication Between Android's Processes
- Craft an interface around each possible user interaction with activities.
- Build services to run and manage the background processes which support your application.
- Use broadcast receivers to automatically respond to system notifications, preference setting changes and announcements from other applications.
- Understand the crucial role of intents in facilitating communication between an application's components and among applications. Share data across applications with Content Providers and ContentResolvers.
Integrating Location Services and Sensing Into Android Applications
- Track the user's location and heading with the Location Services.
- Author a map-based Android app or integrate geolocation data into Google Maps.
- Implement SensorManager respond to physical movement of the device, including rotation, acceleration and shaking.
- Enable apps to adjust the display when the user turns the device, without losing partially-entered form data.
Accessing a Mobile Device's Camera and Telephone
- Allow users to take digital photographs with a device's camera from an application.
- Control the way photographs and videos render within the application's user interface.
- Place phone calls from within an application.
- View and update the device's address book from an application.
Building, Testing and Publishing an Android Application
- Build and sign Android apps, allowing them to be installed on Android devices.
- Version applications to ensure that users have easy access to new features or bug fixes.
- Explore the range of Android developer tools to test and debug applications.
- Publish a finalized project to the Android Market, making it available worldwide.