Mastering PhoneGap Mobile Application Development

Take your PhoneGap experience to the next level and create engaging real-world applications

Mastering PhoneGap Mobile Application Development

Mastering
Kerri Shotts

Take your PhoneGap experience to the next level and create engaging real-world applications
$39.99
$54.99
RRP $39.99
RRP $54.99
eBook
Print + eBook

Instantly access this course right now and get the skills you need in 2017

With unlimited access to a constantly growing library of over 4,000 eBooks and Videos, a subscription to Mapt gives you everything you need to learn new skills. Cancel anytime.

Free Sample

Book Details

ISBN 139781783288434
Paperback392 pages

Book Description

PhoneGap is a useful and flexible tool that enables you to create complex hybrid applications for mobile platforms. In addition to the core technology, there is a large and vibrant community that creates third-party plugins that can take your app to the next level.

This book will guide you through the process of creating a complex data-driven hybrid mobile application using PhoneGap, web technologies, and third-party plugins.

A good foundation is critical, so you will learn how to create a useful workflow to make development easier. From there, the next version of JavaScript (ES6) and the CSS pre-processor SASS are introduced as a way to simplify creating the look of the mobile application. Responsive design techniques are also covered, including the flexbox layout module. As many apps are data-driven, you'll build an application throughout the course of the book that relies upon IndexedDB and SQLite. You'll also download additional content and address how to handle in-app purchases. Furthermore, you’ll build your own customized plugins for your particular use case. When the app is complete, the book will guide you through the steps necessary to submit your app to the Google Play and Apple iTunes stores.

Table of Contents

Chapter 1: Task Automation
Before we begin
About Logology
Why use Gulp for task automation?
Setting up your app's directory structure
Installing Gulp
Creating your first Gulp configuration file
Creating a modular Gulp configuration
Copying assets
Performing substitutions
How to execute Cordova tasks
Managing version numbers
Supporting ES2015
Linting your code
Uglifying your code
Putting it all together
Summary
Chapter 2: ECMAScript 2015 and Browserify
Getting started
Benefits of ES2015
Using Browserify
Summary
Chapter 3: Sassy CSS
Getting started
Learning Sass
Integrating Sass with Gulp
Summary
Chapter 4: More Responsive Design
Getting started
Pixel densities
The CSS3 units
Media queries
Image sizing
Using flex-box layout
Summary
Chapter 5: Hybrid Application Accessibility
Getting started
Types of accessibility features
Accessibility for free
What is WAI-ARIA?
Accessibility examples
Fitting in with native accessibility features
Useful tools
Summary
Chapter 6: Testing and UI Automation
Getting started
An introduction to assertions
Writing tests using Chai
Running test suites using Mocha
Writing UI automation tests
Running UI Automation tests using Appium and Mocha
Integrating our tests with Gulp
Summary
Chapter 7: IndexedDB
Getting started
IndexedDB support and polyfills
Differences between relational and key-object storage
Creating a database
Creating an object store within the database
Handling database upgrades
Transactions
Storing objects
Getting objects
Deleting objects
Using cursors and indexes
Closing the database
Additional resources
Summary
Chapter 8: Web SQL Database
Getting started
Web SQL Database support
The Cordova SQLite plugin
Creating and opening databases
Transactions
Creating tables
Inserting data and binding values
Querying data (single table, joins, and so on)
Deleting data
The SQLite utilities
Summary
Chapter 9: Transferring Files
Getting started
Configuring the whitelist
Downloading files from a server
Receiving files using PHP on a server
Uploading files to a server
Monitoring progress
Aborting transfers
Security concerns
Summary
Chapter 10: Performance
Getting started
Defining performance
The performance difference between desktop browsers, emulators, and physical devices
Profiling your app
Correcting input lag
Correcting visual stutters
Correcting memory problems
Splitting up and delegating long computations
Summary
Chapter 11: Graphical Assets
Getting started
App icon requirements
Creating an app icon
Launch screen requirements
Creating a Launch Screen
Configuring your app
Useful resources
Summary
Chapter 12: Deployment
Build modes
Signing up for developer accounts
Generating signed release builds
Deploying ad hoc releases
Deploying app store releases
Resources
Summary

What You Will Learn

  • Construct build workflows that simplify complex application development
  • Integrate the next version of JavaScript to simplify your code
  • Create accessible hybrid applications
  • Persist and query data using third-party database plugins
  • Create your own PhoneGap plugins for your unique use cases
  • Create icons and splash screens suitable for submission to app stores
  • Publish your app to the Google Play and Apple iTunes stores

Authors

Table of Contents

Chapter 1: Task Automation
Before we begin
About Logology
Why use Gulp for task automation?
Setting up your app's directory structure
Installing Gulp
Creating your first Gulp configuration file
Creating a modular Gulp configuration
Copying assets
Performing substitutions
How to execute Cordova tasks
Managing version numbers
Supporting ES2015
Linting your code
Uglifying your code
Putting it all together
Summary
Chapter 2: ECMAScript 2015 and Browserify
Getting started
Benefits of ES2015
Using Browserify
Summary
Chapter 3: Sassy CSS
Getting started
Learning Sass
Integrating Sass with Gulp
Summary
Chapter 4: More Responsive Design
Getting started
Pixel densities
The CSS3 units
Media queries
Image sizing
Using flex-box layout
Summary
Chapter 5: Hybrid Application Accessibility
Getting started
Types of accessibility features
Accessibility for free
What is WAI-ARIA?
Accessibility examples
Fitting in with native accessibility features
Useful tools
Summary
Chapter 6: Testing and UI Automation
Getting started
An introduction to assertions
Writing tests using Chai
Running test suites using Mocha
Writing UI automation tests
Running UI Automation tests using Appium and Mocha
Integrating our tests with Gulp
Summary
Chapter 7: IndexedDB
Getting started
IndexedDB support and polyfills
Differences between relational and key-object storage
Creating a database
Creating an object store within the database
Handling database upgrades
Transactions
Storing objects
Getting objects
Deleting objects
Using cursors and indexes
Closing the database
Additional resources
Summary
Chapter 8: Web SQL Database
Getting started
Web SQL Database support
The Cordova SQLite plugin
Creating and opening databases
Transactions
Creating tables
Inserting data and binding values
Querying data (single table, joins, and so on)
Deleting data
The SQLite utilities
Summary
Chapter 9: Transferring Files
Getting started
Configuring the whitelist
Downloading files from a server
Receiving files using PHP on a server
Uploading files to a server
Monitoring progress
Aborting transfers
Security concerns
Summary
Chapter 10: Performance
Getting started
Defining performance
The performance difference between desktop browsers, emulators, and physical devices
Profiling your app
Correcting input lag
Correcting visual stutters
Correcting memory problems
Splitting up and delegating long computations
Summary
Chapter 11: Graphical Assets
Getting started
App icon requirements
Creating an app icon
Launch screen requirements
Creating a Launch Screen
Configuring your app
Useful resources
Summary
Chapter 12: Deployment
Build modes
Signing up for developer accounts
Generating signed release builds
Deploying ad hoc releases
Deploying app store releases
Resources
Summary

Book Details

ISBN 139781783288434
Paperback392 pages
Read More

Read More Reviews