1st Edition

PhoneGap Build Developing Cross Platform Mobile Applications in the Cloud

By Bintu Harwani Copyright 2014
    304 Pages 164 B/W Illustrations
    by Auerbach Publications

    303 Pages 164 B/W Illustrations
    by Auerbach Publications

    PhoneGap is a standards-based, open-source development framework that can be deployed to any mobile device without losing the features of the native app—allowing for access to device contacts, the local file system, camera, and media on multiple platforms without requiring users to write a single line of code.

    Ideal for intermediate to advanced users, PhoneGap Build: Developing Cross Platform Mobile Applications in the Cloud offers the comprehensive coverage you need to harness the power of this dynamic tool. It provides complete coverage of the cloud computing platform and the theories behind cloud computing, using a series of engaging examples.

    The book explains the differences between existing mobile platforms, the different types of browsers they support, and the programming languages and integrated development environment required to develop apps for each of them. It then describes how PhoneGap makes the task of developing cross-platform mobile apps easier. This book will teach you how to use:

    • HTML5, CSS3, and JavaScript to develop apps for devices across various mobile operating systems
    • PhoneGap Build to develop mobile apps in the cloud
    • PhoneGap with Sencha Touch and jQuery Mobile
    • Back end databases to store and retrieve information

    The text starts with simpler applications and gradually moves toward describing advanced concepts and how to exploit different application programming interfaces and methods. By the time you finish the book, you will learn how to develop feature-rich mobile applications that can run on the cloud to support different platforms.

    Supplying authoritative guidance and proven best practices for designing cloud-based applications, the book is an ideal reference for cloud system developers, architects, and IT professionals. It is also suitable for use in instructional settings.

    Introducing PhoneGap
    Introduction to PhoneGap
    Exploring PhoneGap Features
    Setting Up an Android Environment
    Creating a First PhoneGap Application for Android
    Updating the Activity Class
    Configuring the Project Metadata
    Creating Android Virtual Devices
    Running the Application
    Ensuring PhoneGap Is Loaded

    Creating a User Interface
    Getting Data through a Text Box
    Getting User’s Choice through Checkboxes and Radio Buttons
    Displaying Options through Drop-Down Lists
    Implementing Navigation
    Introducing Debugging Capabilities
    Creating a Keystore and Digitally Signing the Android Application
         Manually Creating a Keystore and Signing the Application
              Creating a Private Keystore
              Creating an Unsigned Android Application
              Signing the Application with a Private Key
         Using Export Wizard for Creating a Keystore and Signing the Application
    Installing Applications on the Emulator and Device
         Using the Android Debug Bridge Program to Install Applications
         Installing Applications to the Device Using Eclipse ADT

    Configuring PhoneGap
    Configuring PhoneGap for iOS
    Configuring PhoneGap for Windows Phone 7
         Creating a Project Template
         Creating a Windows Phone 7 Project
    Configuring PhoneGap for the BlackBerry
    Configuring PhoneGap for bada
    Configuring PhoneGap for webOS
         Installing HP webOS SDK
         Installing Oracle VM VirtualBox
         Installing webOS Plug-In in Eclipse IDE
         Creating a webOS Application
         Importing the PhoneGap Package

    Using PhoneGap Build
    Beginning with PhoneGap Build
    Defining the Structure of the Application to Upload
    Creating Builds for Different Mobile Platforms
    Loading Private Keys
    Installing the Builds on the Emulator
    Downloading Apps Directly to the Device
    Debugging the Apps

    Using Contacts
    Creating Contacts Manually
    Reading Contacts
    Adding Contacts
    Adding Detailed Information of the Contacts
    Deleting and Updating Contacts

    jQuery Mobile
    Introducing jQuery Mobile
    Declaring a jQuery Mobile Page
    Handling Page Navigation
    Using Lists
         Creating Count Bubbles
         Creating Inset Lists
         Adding List Dividers
         Creating Collapsible Lists
         Creating Numbered Lists
         Displaying Thumbnails and Icons in the List
         Applying a Search Filter
         Creating Split Button Lists
    Creating Dialogs
    Creating Forms in jQuery Mobile
         Input Field
         Checkboxes and Radio Buttons
         Drop-Down Lists
         Displaying Date and Time Pickers
         On/Off Switches
         Grouping Controls

    Storing Data
    Using Storage API
    Methods of the Storage API
    Creating a Database
    Creating Tables and Inserting Rows
    Listing Rows
    Deleting Rows
    Editing Rows

    Using PhoneGap API
    Using Accelerometer API
         Using Accelerometer Methods
              getCurrentAcceleration() Method
              watchAcceleration() Method
              clearWatch() Method
    Using Camera API
    Using the Capture API
         Capturing Audio
         Capturing Video
         Capturing Images
    Using Geolocation API
         Getting a Device’s Current Location
         Watching a Device’s Location
         Canceling a Watch
    Using Google Maps API
         Displaying Google Maps
    Combining the Geolocation and Google Maps API
         Displaying Google Map Centered at the Device Location
         Displaying Markers on the Map
         Drawing Lines on the Map
         Finding the Distance between Two Positions
         Dragging Markers and Computing Distances
         Using the Geocoder Class
    Using Compass API

    Sencha Touch
    Introducing Sencha Touch
    Overview of the Sencha Touch Class Library
    Model View Controller (MVC) Architecture
    Enabling Web Servers
    Installing Sencha Touch 2 SDK
    Using the Sencha Cmd
    Folder Organization of the Sencha Touch App
    Understanding Component Class
    Container Classes
    Creating Views
    Understanding the Index.html File
    Using the Ext.application Class
    Sencha Touch Fields
    Using xtype
    Event Handling
    Getting Components
    Creating a Welcome Application
    Welcome Application in MVC Format
         Styling Buttons
         Displaying Icons in Buttons
    Creating a Login Form
    Creating a List Application
    Navigating Using Tabs

    Appendix A: Setting Up an Android Environment
    Setting Up an Android Environment
    Adding Platforms and Other Components
    Installing Eclipse
    Installing the Android Developer Tool (ADT) Plug-In
    Making the ADT Plug-In Functional

    Appendix B: Using Github



    M.Harwani is founder and owner of Microchip Computer Education (MCE), based in Ajmer, India that provides computer education in all programming and web developing platforms. He graduated with a BE in computer engineering from the University of Pune, and also has a 'C' Level (master's diploma in computer technology) from DOEACC, Government Of India. Being involved in teaching field for over 17 years, he has developed the art of explaining even the most complicated topics in a straightforward and easily understandable fashion. He has written several books on various subjects that includes JSP, JSF, EJB, PHP, .Net, Joomla, jQuery, WordPress and Smartphones. To learn more, visit his blog: http://bmharwani.com/blog