SKIP THE SHIPPING
Use code NOSHIP during checkout to save 40% on eligible eBooks, now through January 5. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This PDF will be accessible from your Account page after purchase and requires PDF reading software, such as Acrobat® Reader®.
The eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
PhoneGap is Adobe’s distribution of the free and open source framework (originally developed by Nitobi) that is now also available from the Apache Foundation as Apache Cordova™. Using PhoneGap, developers can build native mobile apps using standard HTML5, JavaScript, and CSS, and then deploy those apps to every leading mobile platform with little or no recoding. Up to now, though, PhoneGap was lacking complete, practical documentation. PhoneGap Essentials fills that void: It’s the first concise, yet complete, tutorial for succeeding with PhoneGap in real-world development.
Experienced mobile developer John M. Wargo thoroughly introduces the PhoneGap platform, explaining what it is, what it does, and how it works. He then guides you through configuring PhoneGap environments—creating complete mobile apps—and building them for the Google Android™, Samsung bada, BlackBerry® devices, Apple® iOS, Symbian™ OS, and Windows® Phone. Through realistic examples, you’ll master key PhoneGap APIs for everything from GPS to the file system, contacts to camera, device to events, and more. Wargo also demonstrates how to take full advantage of PhoneGap Build, PhoneGap’s cloud-based packaging utility.
Coverage includes
About the Website
Downloadable code projects, additional information, and errata are available at phonegapessentials.com.
Foreword by Bryce A. Curtis xiii
Foreword by Jim Huempfner xv
Preface xvii
Acknowledgments xxiii
About the Author xxiv
Part I: PhoneGap 1
Chapter 1: Introduction to PhoneGap 3
A Little PhoneGap History 4
Why Use PhoneGap? 5
How PhoneGap Works 6
Designing for the Container 11
Writing PhoneGap Applications 13
Building PhoneGap Applications 13
PhoneGap Limitations 17
PhoneGap Plug-Ins 18
Getting Support for PhoneGap 19
PhoneGap Resources 19
Hybrid Application Frameworks 19
Chapter 2: PhoneGap Development, Testing, and Debugging 23
Hello, World! 23
PhoneGap Initialization 25
Leveraging PhoneGap APIs 28
Enhancing the User Interface of a PhoneGap Application 30
Testing and Debugging PhoneGap Applications 35
Dealing with Cross-Platform Development Issues 49
Part II: PhoneGap Developer Tools 55
Chapter 3: Configuring an Android Development Environment for PhoneGap 57
Installing the Android SDK 58
Eclipse Development Environment Configuration 64
Creating an Android PhoneGap Project 66
Testing Android PhoneGap Applications 77
Chapter 4: Configuring a bada Development Environment for PhoneGap 79
Downloading and Installing the Correct PhoneGap bada Files 80
Creating a bada PhoneGap Project 82
Creating a bada Application Profile 86
Testing bada PhoneGap Applications 95
Chapter 5: Configuring a BlackBerry Development Environment for PhoneGap 97
Installing the BlackBerry WebWorks SDK 98
Creating a BlackBerry PhoneGap Project 99
Building BlackBerry PhoneGap Applications 103
Testing BlackBerry PhoneGap Applications 109
Chapter 6: Configuring an iOS Development Environment for PhoneGap 113
Registering as an Apple Developer 113
Installing Xcode 114
Creating an iOS PhoneGap Project 116
Testing iOS PhoneGap Applications 122
Chapter 7: Configuring a Symbian Development Environment for PhoneGap 125
Installing the Nokia Web Tools 125
Installing the Make Utility 126
Creating a Symbian PhoneGap Project 128
Configuring Application Settings 129
Modifying HelloWorld3 for Symbian 130
Packaging Symbian PhoneGap Projects 131
Testing Symbian PhoneGap Applications 132
Chapter 8: Configuring a Windows Phone Development Environment for PhoneGap 135
Installing the Windows Phone Development Tools 135
Creating a Windows Phone PhoneGap Project 136
Testing Windows Phone PhoneGap Applications 139
Chapter 9: Using PhoneGap Build 141
The Fit 142
Getting Started 142
Configuration 143
Creating an Application for PhoneGap Build 145
Creating a PhoneGap Build Project 146
Dealing with Build Issues 150
Testing Applications 152
Debug Mode 153
Part III: PhoneGap APIs 155
Chapter 10: Accelerometer 157
Querying Device Orientation 158
Watching a Device’s Orientation 162
Chapter 11: Camera 165
Accessing a Picture 165
Configuring Camera Options 176
Dealing with Camera Problems 182
Chapter 12: Capture 185
Using the Capture API 186
Configuring Capture Options 189
Capture at Work 191
Chapter 13: Compass 205
Getting Device Heading 205
Watching Device Heading 209
Chapter 14: Connection 217
Chapter 15: Contacts 223
Creating a Contact 224
Searching for Contacts 236
Cloning Contacts 242
Removing Contacts 242
Chapter 16: Device 243
Chapter 17: Events 249
Creating an Event Listener 249
deviceready Event 250
Application Status Events 251
Network Status Events 254
Button Events 256
Chapter 18: File 263
Available Storage Types 263
Accessing the Device’s File System 264
Reading Directory Entries 267
Accessing FileEntry and DirectoryEntry Properties 269
Writing Files 272
Reading Files 274
Deleting Files or Directories 275
Copying Files or Directories 276
Moving Files or Directories 276
Uploading Files to a Server 277
Chapter 19: Geolocation 279
Getting a Device’s Current Location 280
Watching a Device’s Location 284
Chapter 20: Media 293
The Media Object 293
Playing Audio Files 298
Recording Audio Files 299
Seeing Media in Action 300
Chapter 21: Notification 307
Visual Alerts (Alert and Confirm) 307
Beep 310
Vibrate 310
Notification in Action 310
Chapter 22: Storage 315
Local Storage 316
SQL Database 317
Appendix A: Installing the PhoneGap Files 327
Preparing for Samsung bada Development 329
Preparing for iOS Development 329
Preparing for Windows Phone Development 330
Appendix B: Installing the Oracle Java Developer Kit 333
Downloading the JDK 333
Installing the JDK 335
Configuring the Windows Path 335
Confirming Installation Success 336
Appendix C: Installing Apache Ant 337
Macintosh Installation 337
Windows Installation 338
Index 341