Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hybrid Mobile App Development with PhoneGap

Eric Allen
December 16, 2014

Hybrid Mobile App Development with PhoneGap

Presentation for Charlotte's Tech Talent South chapter going over some basic information about hybrid apps and the types of mobile apps. This is just an introduction before we start building an example weather app using PhoneGap and Forecast.io.

Eric Allen

December 16, 2014
Tweet

More Decks by Eric Allen

Other Decks in Technology

Transcript

  1. • Generally have the best performance • Can utilize all

    device functionality • Can be distributed via app stores • Are written in a language that compiles natively for that operating system, like Swift or Objective-C for iOS and Java for Android
  2. • Written in HTML, CSS, and JavaScript • Saved to

    phone by user from website • Cannot be distributed via iTunes App Store or Google Play • Generally the easiest to make • Limited device functionality (gestures, orientation change, camera, geolocation, etc.)
  3. • Written in HTML, CSS, and JavaScript • Can be

    distributed via iTunes App Store and Google Play • Slightly better access to device functionality than HTML5 Apps (this varies by framework) • Generally slower than native apps
  4. • Performance • Lack of Native UI Elements • Lack

    of Native Gestures • Complications with version changes
  5. • WebPerf techniques can help improve app performance • UI

    can simulate activity to make the app appear more responsive • JavaScript optimization can improve performance Performance
  6. • UI systems that mimic native look and feel •

    UI systems that have consistent look and feel without tying themselves to a native environment • Avoiding native mimicry can help avoid the “uncanny valley” effect • Lack of native controls can be jarring for some users Lack of Native UI Elements
  7. • JavaScript libraries can mimic native gestures • JavaScript libraries

    can create new gestures that aren’t available natively • Some gestures won’t be as smooth as their native counterparts, this can be device dependent • Some gestures require complicated logic Lack of Native Gestures
  8. • This one can be unavoidable at times • The

    transition between major OS versions can take time to trickle down to the hybrid development tools • The look and feel of an operating system can change completely • Some 3rd party integrations and plugins may never update to support the new version Complications with Version Changes
  9. • Faster development timeline • Multiple operating systems can use

    the same codebase • Web interface logic can be identical to app interface logic • Low barrier to entry • Faster prototyping
  10. We'll be using the device's geolocation API and the forecast.io

    API to get the current weather conditions and a 7-day forecast for the user's current location.