Description
In this three day course you will learn to develop mobile applications with the Android mobile operating system. You will learn to install and configure the Android development environment, to write your first Android application, to use the various UI elements and controls, to use the framework’s resources, and to store application data in persistent storage. A large selection of labs and demos will ensure that the skills you gain in the course will be transferable to your first Android application.
Intended audience
Developers and team leaders with at least one year of active development experience in the Java programming language.
Topics
Module 1
Hello Android!
- Little bit of architecture
- Platform philosophy
- The Open Handset Alliance
- What it isn’t?
Essentials
- Installing and configuring Eclipse
- Installing the Android SDK
- Android platform types and versions
- Overview of the Android NDK
Android Development Tools
- Android device emulator
- Dalvik Debug Monitor Service (DDMS)
- Android Debug Bridge (ADB)
Inside the Development Environment
- Project types
- Dalvik Virtual Machine
- Basic application structure
- Android libraries
- Project structure
- LAB: “Hello World!” in Android
Module 2
Android Development 101 Android Application Anatomy
- What makes an Android application?
- Application manifest
- Application lifecycle
- Resources and system resources
- Application priority and process state
- Localization
Activities
- What is an activity?
- Creating activities
- Activity states
- Activity state changes
- Sub-activities
- Built-in activity classes
UI Design Fundamentals
- Code and UI separation
- XML elements and attributes describing UI
Views, Controls, Widgets, and Layouts
- Introducing views
- Layouts
- Selectors and lists
- Menus, sub-menus, and context menus
- Fonts
- WebKit browser
- Custom widgets and controls
- LAB: Restaurant tab splitter and tip calculator (all in one activity)
Module 3
Intents, Adapters, and Dialogs Introducing Intents
- Built-in intents and Linkify
- Launching activities and sub-activities
- Returning data from activities
- Intent filters
- Implicit intents
- Retrieving available actions via introspection
- Broadcast intents and receivers
Introducing Adapters
- Built-in Android adapters
- Adapters and data binding
Introducing Dialogs
- Built-in dialogs and the dialog builder
- Activities as dialogs
LAB
- TODO list
- Item editor (separate activity)
- Using the contact picker (“call” TODO item) OR inputting phone number manually
- Using the dialer (when clicking a “call” TODO item)
Module 4
Storing and Consuming Data Preferences
- Saving activity state
- Preference pages
- Shared preferences
- Local storage
- Accessing files
- File management tools
Local Database
- SQLite overview
- Managing and accessing SQLite
- Cursors and content values
Content Providers
- Using content providers
- Built-in content providers
- Custom content providers
LAB
- Persisting the TODO list (SQLite)
- Persisting the TODO preferences (SharedPreferences)
- Persisting the TODO UI state, e.g. the item text (activity Bundle)
- (OPTIONAL) Exposing the TODO items through a content provider and using them from another application