SlideShare a Scribd company logo
Apache Cordova,
Hybrid Application Development
Mark Terry
Standard introduction
● Developer for 18 years, mostly in web.
● Currently working at Holiday Extras, Kent.
● Big fan of mobile.
● Not really a big fan of Javascript.
Brief History
● Originally “PhoneGap” made by Nitobi in 2009
● Adobe bought Nitobi in 2011
● Adobe contributed the source to the Apache
Software Foundation, and changed name.
● Now powers Adobe PhoneGap and others.
● Adobe provides extra functionality such as its
build service.
● Regular updates.
Who uses it?
● Microsoft
● Adobe
● IBM
● Salesforce
● Facebook
● Wikipedia
● RIM
● BBC
● Holiday extras!
What does it give you?
● Boilerplate native container application
containing a web view.
● CLI to build, emulate and run your application.
● Javascript interface to any native code.
● Native plugin repository.
Cover versions
● Adobe Phonegap
● Intel XDK
● Appery.io
● AppGyver Steroids
● Iconic
Platforms and Plugins
● Android
● iOS
● BlackBerry 10
● Windows Phone 8
● Amazon Fire OS
● Firefox OS
● Ubuntu Touch
● Windows
● Tizen
● ...
● Battery Status
● Camera
● Contacts
● Device Motion and Orientation
● File System
● Geolocation
● Globalization
● Media Capture
● Network Information
● Vibration
● And more....
Your browser is a platform!
● Apps are developed in your browser.
● Native plugins won't work but they can be
emulated automatically.
Why should you use it?
● Able to use standard web technologies.
● And nearly a similar toolset.
● Quick to release on multiple platforms.
● DRY / Code sharing.
Getting started
● Select target devices based on OS version.
● Single page app is the norm.
● Client heavy, with offline functionality.
● Cordova app can be nested into an existing
native app.
● Use a JS framework that you know.
● JS helpers: rachet, hammerjs, jquerymobile,
etc..
It's not all roses
● Need a some native dev experience.
● Still encounter differing device behaviour.
● Different platform expectations.
● Contributed plugins can be of varying quality.
Questions
● http://cordova.apache.org/
● #cordova #phonegap on IRC
● http://about.me/m.terry
Hack day project
http://production.fixie-app.divshot.io/

More Related Content

PDF
Apps with Apache Cordova and Phonegap
PDF
Apache Cordova
KEY
Phonegap/Cordova vs Native Application
PPTX
Introduction to Apache Cordova (Phonegap)
PDF
Cordova and PhoneGap Insights
PDF
Apache cordova
PDF
Cordova / PhoneGap, mobile apps development with HTML5/JS/CSS
PDF
Cordova: APIs and instruments
Apps with Apache Cordova and Phonegap
Apache Cordova
Phonegap/Cordova vs Native Application
Introduction to Apache Cordova (Phonegap)
Cordova and PhoneGap Insights
Apache cordova
Cordova / PhoneGap, mobile apps development with HTML5/JS/CSS
Cordova: APIs and instruments

What's hot (20)

PDF
Cross-platform development frameworks
PDF
Cordova + Ionic + MobileFirst
PPTX
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
PDF
Hybrid Apps with Ionic Framework
PPT
How To Create One App For All Platforms using PhoneGap
PPTX
Workshop on Hybrid App Development with Ionic Framework
PPTX
Hybrid Mobile Applications
PDF
Hybrid Apps with Angular & Ionic Framework
PDF
Android Development...Using Web Technologies
PDF
Cross Platform Mobile Development
PDF
Creating mobile apps - an introduction to Ionic (Engage 2016)
PDF
Building Native Mobile Applications with PhoneGap
PPTX
Hybrid Mobile Development - Overview and Intro to Cordova/Ionic Framework
PPTX
Hybrid vs. Native app - Ionic Framework with AngularJS
PDF
Cross platform development
PPTX
Ionic Framework - get up and running to build hybrid mobile apps
PDF
Building Mobile Apps with Cordova , AngularJS and Ionic
PDF
Cross platform mobile web apps
PPTX
Developing for Xoom with Flash and AIR
PDF
Ionic Framework
Cross-platform development frameworks
Cordova + Ionic + MobileFirst
Hybrid Mobile Development with Apache Cordova and Java EE 7 (JavaOne 2014)
Hybrid Apps with Ionic Framework
How To Create One App For All Platforms using PhoneGap
Workshop on Hybrid App Development with Ionic Framework
Hybrid Mobile Applications
Hybrid Apps with Angular & Ionic Framework
Android Development...Using Web Technologies
Cross Platform Mobile Development
Creating mobile apps - an introduction to Ionic (Engage 2016)
Building Native Mobile Applications with PhoneGap
Hybrid Mobile Development - Overview and Intro to Cordova/Ionic Framework
Hybrid vs. Native app - Ionic Framework with AngularJS
Cross platform development
Ionic Framework - get up and running to build hybrid mobile apps
Building Mobile Apps with Cordova , AngularJS and Ionic
Cross platform mobile web apps
Developing for Xoom with Flash and AIR
Ionic Framework
Ad

Viewers also liked (20)

PDF
Social business online information 201112
PPT
Hotleads:upsell
PDF
How to manage your payments
PPT
Online Presence
PDF
Presentation Hassle Free Anna
ODP
Polyglot polywhat polywhy
PDF
SMX 2010 Summary of Hot Topics from SEO Track
PDF
Role of Cognitive Analytics in a era of Industry 4.0
PDF
Get to know Holiday Extras 2011
PDF
Cinematic UX, Brad Weaver
KEY
Access to iDevices
PDF
Osservatorio congressuale Torino 2014 2015
PDF
Static Sites Can be the Solution (Simon Wood)
PDF
Design+Startup 2013
PDF
Scottish Communicators Network - 22 October 2014 - People Make Glasgow
PDF
How to get started with Roadio in under 60 seconds
PDF
Surviving the enterprise storm - @RianVDM
PDF
Structuring Data from Unstructured Things. Sean Lorenz
PDF
Break away old
Social business online information 201112
Hotleads:upsell
How to manage your payments
Online Presence
Presentation Hassle Free Anna
Polyglot polywhat polywhy
SMX 2010 Summary of Hot Topics from SEO Track
Role of Cognitive Analytics in a era of Industry 4.0
Get to know Holiday Extras 2011
Cinematic UX, Brad Weaver
Access to iDevices
Osservatorio congressuale Torino 2014 2015
Static Sites Can be the Solution (Simon Wood)
Design+Startup 2013
Scottish Communicators Network - 22 October 2014 - People Make Glasgow
How to get started with Roadio in under 60 seconds
Surviving the enterprise storm - @RianVDM
Structuring Data from Unstructured Things. Sean Lorenz
Break away old
Ad

Similar to Apache Cordova, Hybrid Application Development (20)

PDF
Hybridmobileapps 130130213844-phpapp02
PDF
Phonegap - Girl Geek Sydney
PPT
Cross platform mobile application development
PPTX
Developing Windows Phone 8 apps using PhoneGap
PPTX
Introduction to hybrid application development
PDF
Introducing chrome apps (ogura)
ODP
Mobileweb
PPTX
2011 code camp
PDF
Introduction to Cross-Platform Hybrid Mobile App Development
PDF
Cross-Platform Mobile Development with PhoneGap-Vince Bullinger
PDF
Embedded Android Workshop
PPTX
Flutter vs Ionic: Which framework is better for cross platform application d...
PDF
Embedded Android Workshop at ELC Europe
ODP
Synapse india reviews on mobile application development
PDF
Embedded Android Workshop / ELC 2013
PPT
Dayton webusers creatinghybridapps-webedition
PPTX
Top 4 Cross Platform tools for Mobile App Development
PDF
Embedded Android Workshop at Android Open 2011
PDF
Embedded Android Workshop at Embedded World Conference 2013
PPTX
Cross-Platform Development
Hybridmobileapps 130130213844-phpapp02
Phonegap - Girl Geek Sydney
Cross platform mobile application development
Developing Windows Phone 8 apps using PhoneGap
Introduction to hybrid application development
Introducing chrome apps (ogura)
Mobileweb
2011 code camp
Introduction to Cross-Platform Hybrid Mobile App Development
Cross-Platform Mobile Development with PhoneGap-Vince Bullinger
Embedded Android Workshop
Flutter vs Ionic: Which framework is better for cross platform application d...
Embedded Android Workshop at ELC Europe
Synapse india reviews on mobile application development
Embedded Android Workshop / ELC 2013
Dayton webusers creatinghybridapps-webedition
Top 4 Cross Platform tools for Mobile App Development
Embedded Android Workshop at Android Open 2011
Embedded Android Workshop at Embedded World Conference 2013
Cross-Platform Development

Recently uploaded (20)

PDF
Encapsulation_ Review paper, used for researhc scholars
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Electronic commerce courselecture one. Pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Approach and Philosophy of On baking technology
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
cuic standard and advanced reporting.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Empathic Computing: Creating Shared Understanding
Encapsulation_ Review paper, used for researhc scholars
“AI and Expert System Decision Support & Business Intelligence Systems”
Chapter 3 Spatial Domain Image Processing.pdf
MYSQL Presentation for SQL database connectivity
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Mobile App Security Testing_ A Comprehensive Guide.pdf
Spectral efficient network and resource selection model in 5G networks
NewMind AI Monthly Chronicles - July 2025
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Electronic commerce courselecture one. Pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
20250228 LYD VKU AI Blended-Learning.pptx
Approach and Philosophy of On baking technology
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
cuic standard and advanced reporting.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Empathic Computing: Creating Shared Understanding

Apache Cordova, Hybrid Application Development

  • 1. Apache Cordova, Hybrid Application Development Mark Terry
  • 2. Standard introduction ● Developer for 18 years, mostly in web. ● Currently working at Holiday Extras, Kent. ● Big fan of mobile. ● Not really a big fan of Javascript.
  • 3. Brief History ● Originally “PhoneGap” made by Nitobi in 2009 ● Adobe bought Nitobi in 2011 ● Adobe contributed the source to the Apache Software Foundation, and changed name. ● Now powers Adobe PhoneGap and others. ● Adobe provides extra functionality such as its build service. ● Regular updates.
  • 4. Who uses it? ● Microsoft ● Adobe ● IBM ● Salesforce ● Facebook ● Wikipedia ● RIM ● BBC ● Holiday extras!
  • 5. What does it give you? ● Boilerplate native container application containing a web view. ● CLI to build, emulate and run your application. ● Javascript interface to any native code. ● Native plugin repository.
  • 6. Cover versions ● Adobe Phonegap ● Intel XDK ● Appery.io ● AppGyver Steroids ● Iconic
  • 7. Platforms and Plugins ● Android ● iOS ● BlackBerry 10 ● Windows Phone 8 ● Amazon Fire OS ● Firefox OS ● Ubuntu Touch ● Windows ● Tizen ● ... ● Battery Status ● Camera ● Contacts ● Device Motion and Orientation ● File System ● Geolocation ● Globalization ● Media Capture ● Network Information ● Vibration ● And more....
  • 8. Your browser is a platform! ● Apps are developed in your browser. ● Native plugins won't work but they can be emulated automatically.
  • 9. Why should you use it? ● Able to use standard web technologies. ● And nearly a similar toolset. ● Quick to release on multiple platforms. ● DRY / Code sharing.
  • 10. Getting started ● Select target devices based on OS version. ● Single page app is the norm. ● Client heavy, with offline functionality. ● Cordova app can be nested into an existing native app. ● Use a JS framework that you know. ● JS helpers: rachet, hammerjs, jquerymobile, etc..
  • 11. It's not all roses ● Need a some native dev experience. ● Still encounter differing device behaviour. ● Different platform expectations. ● Contributed plugins can be of varying quality.
  • 12. Questions ● http://cordova.apache.org/ ● #cordova #phonegap on IRC ● http://about.me/m.terry

Editor's Notes

  • #2: Hello!
  • #3: I've got starting on writing mobile apps in the past, but have been dismayed that I would have to write the same app several times just so all my friends could run it. This took me back to packaging up visual basic apps for different versions of windows many years ago. Not a good place. Using web technologies Javascript is what we have at the moment that runs in the client cross browser, so we have to live with it. ES6 is looking good though. Don't judge me :-)
  • #4: Once an open source project becomes part of the apache foundation, you know there is some development behind it, with a good issue reporting, feature release and community backing it. We need to mention phonegap as you will come across mentions of it in blogs and stack overflow questions etc. when researching. The build service allows you to deploy apps for platforms you don't have. For example an iOS app without needing to own a mac. In short, they are similar but not the same. Cordova's goal is to become redundant, hopefully all browsers will catch up with all the required native technology and we can just use HTML5 only! New point releases nearly every month!
  • #5: Here are some of the brands you will recognise Microsoft and RIM played a big hand in creating the native platform brings that allows cordova to work so there is some good backing behind the project.
  • #6: A webview is a native component which is a mini browser in itself. Cordova creates a native container or separate app for every supported platform you need. A cordova app is just a HTML app running from inside a native app. Doesn't sound like a lot, but we have the freedom to write an app how we like. Using the provided CLI alongside platform tools, you can build release ready apps without the need to start xcode, eclipse or android studio. There are projects available that allow you to download your updated JS over the web when you app requires updating so you don't even need to release new app versions.
  • #7: These products all use cordova as their underlying technology. Intel XDK has built in game support for gamepads and rendering libraries. Appery, allows you to develop in the cloud. AppGyver adds extra tooling and their own UI framework. Iconic adds in the angular js framework.
  • #8: Tizen, open source os that can run in cars, phones, wearable devices – Samsung Gear S watch Samsung Z1 phone released at the start of the year in India uses it. These plugins are provided by cordova and are updated regularly so you can rely on them. You can write your own plugins and then upload them to github etc. to install and share, in a similar way to npm or bower. You can think of plugins as missing browser features or native polyfills.
  • #9: For example. If you have an accelerometer plugin in your browser it could simulate some predictable motion, rather than just failing or not sending any motion events. It is up the author of a plugin to decide which platforms they support.
  • #10: Css, less, HTML5, coffescript, Javascript, and libraries such as momentjs. You will most likely have developer(s) with this knowledge already. Frameworks such as backbone or angular etc.. Can use your current web dev editor, to keep devs happy. Can debug in the browser on modern devices. Releasing on multiple platforms at once take minutes, just a matter of typing in a few commands and navigating the particular app stores release process. Dont repeat yourself, this is a big win for me, you will probably have a lot of styles, layout and logic that can be reused in an app that can speed up development further.
  • #11: Working with new devices is straight forward, as you go back through the older versions support for features you need might be lacking. Polyfilling or emulating features might not be worthwhile. Multiple single page apps can be used in one cordova app, or more than one cordova app can be nested inside a single native app.
  • #12: IOS users expect apps to work in a certain way as do android users, which way will your app work? Will you alter the app depending on platform or strike some middle ground. Eg, the hardware back button on the android. There are many plugins created by users, mostly on Github, some are designed for previous cordova versions, not being maintained well.
  • #13: There are normally some helpful people on irc.