HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
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:
Practical, example-rich coverage of:
PLUS: Register your product at www.informit.com/register for additional online chapters that cover Android Ice Cream Sandwich (Android 4), including a complete, working Ice Cream Sandwich app!
VISIT WWW.DEITEL.COM
Download EnhancedSlideshow.zip
Download FavoriteTwitterSearches.zip
Download FlagQuizGame.zip Download RouteTracker.zip Download Slideshow.zip Download SpotOn.zip Download TipCalculator.zip Download WeatherViewer.zip Download Welcome.zip Download SupportingFiles.zip Download HTML5FavoriteTwitterSearches.zipDownload EnhancedAddressBook.zip
Android for Programmers Welcome App: Dive-Into Eclipse and the ADT Plugin
Download the sample pages (includes Chapter 3 and Index)
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
Bluetooth
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