Pub. Date:
Prentice Hall
Android for Programmers: An App-Driven Approach / Edition 1

Android for Programmers: An App-Driven Approach / Edition 1


Current price is , Original price is $49.99. You

Temporarily Out of Stock Online

Please check back later for updated availability.

This item is available online through Marketplace sellers.


The professional programmer’s Deitel® guide to Android™ smartphone and tablet app development and the Eclipse IDE with the Android Development Tools (ADT) plug-in

Billions of apps have been downloaded from Android Market! This book gives you everything you’ll need to start developing great Android apps quickly and getting them published on Android Market. The book uses an app-driven approach—each new technology is discussed in the context of 16 fully tested Android apps, complete with syntax coloring, code walkthroughs and sample outputs. Apps you’ll develop include:

  • SpotOn Game
  • Slideshow
  • Flag Quiz
  • Route Tracker
  • Favorite Twitter® Searches
  • Address Book
  • Tip Calculator
  • Doodlz
  • Weather Viewer
  • Cannon Game
  • Voice Recorder
  • Pizza Ordering

Practical, example-rich coverage of:

  • Smartphone and Tablet Apps, Android Development Tools (ADT) Plug-In for Eclipse
  • Activities, Intents, Content Providers
  • GUI Components, Menus, Toasts, Resource Files, Touch and Gesture Processing
  • Tablet Apps, ActionBar and AppWidgets
  • Tweened Animations, Property Animations
  • Camera, Audio, Video, Graphics, OpenGL ES
  • Gallery and Media Library Access
  • SharedPreferences, Serialization, SQLite
  • Handlers and Multithreading, Games
  • Google Maps, GPS, Location Services, Sensors
  • Internet-Enabled Apps, Web Services, Telephony, Bluetooth®
  • Speech Synthesis and Recognition
  • Android Market, Pricing, Monetization
  • And more…

PLUS: Register your product at for additional online chapters that cover Android Ice Cream Sandwich (Android 4), including a complete, working Ice Cream Sandwich app!


  • For information on Deitel’s Dive Into® Series instructor-led programming language training courses offered at customer sites worldwide visit or write to
  • Download code examples
  • Check out the growing list of programming Resource Centers
  • Join the Deitel Twitter (@deitel) and Facebook ( communities
  • To receive updates for this book, subscribe to the free Deitel ® Buzz Online e-mail newsletter at

Product Details

ISBN-13: 9780132121361
Publisher: Prentice Hall
Publication date: 11/07/2011
Series: Deitel Developer Series
Pages: 512
Product dimensions: 7.00(w) x 9.00(h) x 1.20(d)

About the Author

Paul Deitel, Abbey Deitel and Harvey Deitel are from Deitel & Associates, Inc., the internationally recognized programming languages authoring and corporate-training organization. Over a million people worldwide have used Deitel books to master Java™, iPhone app development, C#, C++, C, Internet and web programming, JavaScript, XML, Visual Basic®, Visual C++®, Perl, Python and more. Michael Morgano is a professional Android developer with Imerj.

Table of Contents

Preface xiv

Before You Begin xxii

Chapter 1: Introduction to Android 1

1.1 Introduction 2

1.2 Android Overview 4

1.3 Android 2.2 (Froyo) 7

1.4 Android 2.3 (Gingerbread) 10

1.5 Android 3.0 (Honeycomb) 12

1.6 Android Ice Cream Sandwich 15

1.7 Downloading Apps from the Android Market 16

1.8 Packages 17

1.9 Android Software Development Kit (SDK) 18

1.10 Object Technology: A Quick Refresher 20

1.11 Test-Driving the Doodlz App in an Android Virtual Device (AVD) 23

1.12 Deitel Resources 32

1.13 Android Development Resources 33

1.14 Wrap-Up 34

Chapter 2: Android Market and App Business Issues 35

2.1 Introduction 36

2.2 Building Great Android Apps 36

2.3 Android Best Practices 38

2.4 Registering at Android Market 44

2.5 Setting Up a Google Checkout Merchant Account 44

2.6 AndroidManifest.xml File 45

2.7 Preparing Your Apps for Publication 46

2.8 Uploading Your Apps to Android Market 51

2.9 Other Android App Marketplaces 54

2.10 Pricing Your App: Free or Fee 54

2.11 Monetizing Apps with In-App Advertising 56

2.12 Monetizing Apps: Using In-App Billing to Sell Virtual Goods in Your Apps 57

2.13 Launching the Market App from Within Your App 59

2.14 Managing Your Apps in Android Market 59

2.15 Marketing Your App 59

2.16 Other Popular App Platforms 64

2.17 Android Developer Documentation 65

2.18 Android Humor 66

2.19 Wrap-Up 67

Chapter 3: Welcome App 68

Dive-Into® Eclipse and the ADT Plugin

3.1 Introduction 69

3.2 Technologies Overview 69

3.3 Eclipse IDE 70

3.4 Creating a New Project 71

3.5 Building the Welcome App’s GUI with the ADT’s Visual Layout Editor 74

3.6 Examining the main.xml File 87

3.7 Running the Welcome App 89

3.8 Wrap-Up 89

Chapter 4: Tip Calculator App 91

Building an Android App with Java

4.1 Introduction 92

4.2 Test-Driving the Tip Calculator App 93

4.3 Technologies Overview 94

4.4 Building the App’s GUI 94

4.5 Adding Functionality to the App 106

4.6 Wrap-Up 116

Chapter 5: Favorite Twitter® Searches App 117

SharedPreferences, Buttons, Nested Layouts, Intents, AlertDialogs, Inflating XML Layouts and the Manifest File

5.1 Introduction 118

5.2 Test-Driving the Favorite Twitter Searches App 119

5.3 Technologies Overview 121

5.4 Building the App’s GUI and Resource Files 123

5.5 Building the App 131

5.6 AndroidManifest.xml 142

5.7 Wrap-Up 143

Chapter 6: Flag Quiz Game App 146

Assets, AssetManager, Tweened Animations, Handler, Menus and Logging Error Messages

6.1 Introduction 147

6.2 Test-Driving the Flag Quiz Game App 151

6.3 Technologies Overview 151

6.4 Building the App’s GUI and Resource Files 153

6.5 Building the App 160

6.6 AndroidManifest.xml 174

6.7 Wrap-Up 175

Chapter 7: Cannon Game App 176

Listening for Touches and Gestures, Manual Frame-By-Frame Animation, Graphics, Sound, Threading, SurfaceView and SurfaceHolder

7.1 Introduction 177

7.2 Test-Driving the Cannon Game App 178

7.3 Technologies Overview 179

7.4 Building the App’s GUI and Resource Files 181

7.5 Building the App 183

7.6 Wrap-Up 203

Chapter 8: SpotOn Game App 204

Property Animation, ViewPropertyAnimator, AnimatorListener, Thread-Safe Collections, Default SharedPreferences for an Activity

8.1 Introduction 205

8.2 Test-Driving the SpotOn Game App 206

8.3 Technologies Overview 207

8.4 Building the App’s GUI and Resource Files 208

8.5 Building the App 210

8.6 Wrap-Up 224

Chapter 9: Doodlz App 225

Two-Dimensional Graphics, SensorManager, Multitouch Events and Toasts

9.1 Introduction 226

9.2 Test-Driving the Doodlz App 227

9.3 Technologies Overview 228

9.4 Building the App’s GUI and Resource Files 229

9.5 Building the App 234

9.6 Wrap-Up 256

Chapter 10: Address Book App 258

ListActivity, AdapterViews, Adapters, Multiple Activities, SQLite, GUI Styles, Menu Resources and MenuInflater

10.1 Introduction 259

10.2 Test-Driving the Address Book App 261

10.3 Technologies Overview 262

10.4 Building the GUI and Resource Files 263

10.5 Building the App 269

10.6Wrap-Up 290

Chapter 11: Route Tracker App 291

Google Maps API, GPS, LocationManager, MapActivity, MapView and Overlay

11.1 Introduction 292

11.2 Test-Driving the Route Tracker App 294

11.3 Technologies Overview 296

11.4 Building the GUI and Resource Files 298

11.5 Building the App 300

11.6 Wrap-Up 318

Chapter 12: Slideshow App 319

Gallery and Media Library Access, Built-In Content Providers, MediaPlayer, Image Transitions, Custom ListActivity Layouts and the View-Holder Pattern

12.1 Introduction 320

12.2 Test-Driving the Slideshow App 323

12.3 Technologies Overview 324

12.4 Building the GUI and Resource Files 327

12.5 Building the App 331

12.6 Wrap-Up 358

Chapter 13: Enhanced Slideshow App 360

Serializing Data, Taking Pictures with the Camera and Playing Video in a VideoView

13.1 Introduction 361

13.2 Test-Driving the Enhanced Slideshow App 362

13.3 Technologies Overview 363

13.4 Building the GUI and Resource Files 364

13.5 Building the App 367

13.6 Wrap-Up 389

Chapter 14: Weather Viewer App 390

Web Services, JSON, Fragment, ListFragment, DialogFragment, ActionBar, Tabbed Navigation, App Widgets, Broadcast Intents and BroadcastReceivers

14.1 Introduction 391

14.2 Test-Driving the Weather App 393

14.3 Technologies Overview 394

14.4 Building the App’s GUI and Resource Files 396

14.5 Building the App 399

14.6 Wrap-Up 459

Index 460

Chapters on the Web

Go to the book’s registration page to register and download these chapters.

Chapter 15: PHAB’s Pizza App

Text-to-Speech, Speech-to-Text and Telephony

Chapter 16: Voice Recorder App

Audio Recording and Playback

Chapter 17: Enhanced Address Book App


Chapter 18: 3D Art App

OpenGL ES 3D Rendering

Chapter 19: HTML5 Favorite Twitter® Searches App

Bonus Chapter: HTML5, CSS3 and JavaScript for Experienced Web Developers

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews

Android for Programmers 3.2 out of 5 based on 0 ratings. 6 reviews.
Emarch More than 1 year ago
I initially selected this book due to the multiple authors, hoping it would be more error free than other book I have read from single authors. So far that has been true, the more eyes in the review process really help not only catch errors but organize the material. Little things like all code snippets having line numbers and being high-lighted to follow the text really help. There are a good number of screen shots that make it easy to follow along with Eclipse on a windows or mac machine. I read so many posts on the internet saying Android has no GUI builder to layout widgets, and was very surprised, it wasn't until this book, I found out they are wrong. Adroid being what it is with Google behind it needs all the help with documentation and organization it can get. Google has that tendency to just leave it as-is, while their phD's make more hard to follow videos. The 16 apps they use as examples cover a nice range of UI, Services and libraries. The only negative is I'd prefer to not use Eclipse and would rather use my editor and a make file, but this isn't the authors faults, Android seems to be married to the ADT visual layout editor plugin and the ant build system. This book is for the rest of us that are normal C++ or C# or Java folks and can talk layman terms in getting the job done. The authors are to be commended for that alone!
Anonymous More than 1 year ago
Anonymous More than 1 year ago
Anonymous More than 1 year ago
JuniorWatson More than 1 year ago
This book is basically a list of URLs and a rehash of the Android documentation. Makes me wonder if all Deitel materials are like this one.
Anonymous More than 1 year ago
Motorola xoom