Preface
Part Ⅰ. Tools and Basics
1. Installing the Android SDK and Prerequisites
Installing the Android SDK and Prerequisites
The Java Development Kit (JDK)
The Eclipse Integrated Development Environment (IDE)
The Android SDK
Adding Build Targets to the SDK
The Android Developer Tools (ADT) Plug-in for Eclipse
Test Drive: Confirm That Your Installation Works
Making an Android Project
Making an Android Virtual Device (AVD)
Running a Program on an AVD
Running a Program on an Android Device
Troubleshooting SDK Problems: No Build Targets
Components of the SDK
The Android Debug Bridge (adb)
The Dalvik Debug Monitor Server (DDMS)
Components of the ADT Eclipse Plug-in
Android Virtual Devices
Other SDK Tools
Keeping Up-to-Date
Keeping the Android SDK Up-to-Date
Keeping Eclipse and the ADT Plug-in Up-to-Date
Keeping the JDK Up-to-Date
Example Code
SDK Example Code
Example Code from This Book
On Reading Code
2. Java for Android
Android Is Reshaping Client-Side Java
The Java Type System
Primitive Types
Objects and Classes
Object Creation
The Object Class and Its Methods
Objects, Inheritance, and Polymorphism
Final and Static Declarations
Abstract Classes
Interfaces
Exceptions
The Java Collections Framework
Garbage Collection
Scope
Java Packages
Access Modifiers and Encapsulation
Idioms of Java Programming
Type Safety in Java
Using Anonymous Classes
Modular Programming in Java
Basic Multithreaded Concurrent Programming in Java
Synchronization and Thread Safety
Thread Control with wait0 and notify0 Methods
Synchronization and Data Structures
3.The Ingredients of an Android Application
Traditional Programming Models Compared to Android
Activities, Intents, and Tasks
Other Android Components
Service
Content Providers
Broadcast Receiver
Component Life Cycles
The Activity Life Cycle
On Porting Software to Android
Static Application Resources and Context
Organizing Java Source
Resources
Application Manifests
Initialization Parameters in AndroidManifest.xml
Packaging an Android Application: The .apk File
The Android Application Runtime Environment
……
Part Ⅱ. About the Android Framework
Part Ⅲ. A Skeleton Application for Android
Part Ⅳ. Advanced Topics