Skip to content
CMO & CTO
CMO & CTO

Closing the Bridge Between Marketing and Technology, By Luis Fernandez

  • Digital Experience
    • Experience Strategy
    • Experience-Driven Commerce
    • Multi-Channel Experience
    • Personalization & Targeting
    • SEO & Performance
    • User Journey & Behavior
  • Marketing Technologies
    • Analytics & Measurement
    • Content Management Systems
    • Customer Data Platforms
    • Digital Asset Management
    • Marketing Automation
    • MarTech Stack & Strategy
    • Technology Buying & ROI
  • Software Engineering
    • Software Engineering
    • Software Architecture
    • General Software
    • Development Practices
    • Productivity & Workflow
    • Code
    • Engineering Management
    • Business of Software
    • Code
    • Digital Transformation
    • Systems Thinking
    • Technical Implementation
  • About
CMO & CTO

Closing the Bridge Between Marketing and Technology, By Luis Fernandez

What is phonegap a practical intro

Posted on February 16, 2016 By Luis Fernandez

What is PhoneGap and when should you pick it for your next mobile app. If you write HTML CSS and JavaScript all day and want to ship to the App Store and Google Play without learning Swift or Java from scratch, this guide gives a grounded view. Real tradeoffs. Real wins. And a few scars from the road.

Problem framing

PhoneGap is a toolkit from Adobe that packages your web app inside a native wrapper. Under the hood it uses Apache Cordova, an open source project that talks to device features through a plugin bridge. Your code runs in a WebView. The package is a native binary that you can upload to stores. So your stack stays familiar while your app looks and installs like a native one.

This approach shines when you want one codebase to reach iOS Android and maybe Windows Phone. That single codebase story is strong for teams with web skills. You can keep your design system your build pipeline and your test habits. You can even use a cloud service called PhoneGap Build to compile without touching Xcode or Android Studio which is great if your team is on Windows or you just do not want to mess with provisioning profiles today.

The price you pay is simple. You run in a browser view. That means you get the joys and the limits of the browser. Fast UI for content forms and feeds. More work for heavy animations fancy gestures and big lists with images. If you need constant 60 frames per second or tight low level access, a pure native stack tends to be safer.

So ask this question first. Is my app mostly content and basic device features. If the answer is yes and you are fine with a web look that echoes your site, PhoneGap is a friendly fit. If you are building a game a graphics lab or a super custom UI you might regret it later.

There is some naming confusion that trips people. PhoneGap vs Cordova. Think of Cordova as the engine and PhoneGap as the distribution from Adobe with extras like PhoneGap Build and some templates. For day to day dev most docs apply to both. Plugins are shared. The command line tools feel nearly the same.

Context matters too. Angular and Ionic are popular right now for hybrid apps. Ionic gives you mobile flavored components on top of Angular and Cordova so you can ship faster. React Native is getting buzz as well but it is a different approach since it renders native widgets with JavaScript instead of running inside a WebView. If your team already speaks Angular and Sass, the PhoneGap plus Ionic combo is very productive.

Patterns and anti patterns

Here are patterns that work well with PhoneGap based on what we have shipped and seen in the wild.

  • Single page app structure. Use a client router keep screens light and cache smartly. Angular or a leaner setup with a tiny router both work.
  • Static assets served locally. Bundle icons fonts and templates inside the app. Reduce round trips on app start.
  • Use native plugins for the right things. Camera barcode push notifications file system in app browser and geolocation are common and stable. Stick to well maintained plugins with clear change logs.
  • Network first with offline fallbacks. Cache API responses in local storage or a tiny database so feeds do not flicker when the network blips in the subway or elevator.
  • Keep navigation simple. Tab bar or a side menu with a few levels of depth is fine. Overly clever gesture based navigation can stutter in a WebView.
  • Measure startup time. Lazy load big modules and images. Show a real loading state once the splash screen goes away. A fast first paint makes the whole app feel better.

And here are anti patterns that usually hurt.

  • Big infinite photo feeds with heavy image transforms on the client. Preprocess on the server use thumbnails and paginate hard.
  • Fancy parallax everything. Smooth transforms are tricky on older Android devices. Pick your battles and prefer simple movement.
  • Too many plugins. Every plugin adds surface area and sometimes permissions and build pain. If you only need one small function maybe do it with plain web APIs.
  • Ignoring platform rules. iOS has back navigation patterns and bounce effects. Android has a hardware back button and a status bar that behaves differently. Respect those so your app does not feel odd.
  • Not testing on older devices. It may be fine on a shiny iPhone 6s but a mid range Android from a couple of years ago will humble your scroll performance fast.

One more pattern that deserves its own line. Treat the WebView like a browser you do not fully control. Do not assume identical behavior across Android builds vendor skins and WebView versions. Use feature detection. Guard code paths. And keep your CSS simple.

Case vignette

Let us say a small team needs an event app for a city tech conference. The checklist is classic. Schedule speakers and rooms. A map and directions. Push alerts for last minute changes. Social links. A way to bookmark talks. They have three weeks and a tiny budget. This is prime PhoneGap territory.

The team picks Ionic with Angular to move fast. They drop in tabs for Schedule Speakers Map and My List. They fetch content from a simple JSON API and cache it locally so the app opens even if the venue Wi Fi is struggling. They include plugins for push notifications and in app browser so links to speaker blogs open inside the app with a close button.

Build setup is simple at first. They use the Cordova command line tooling locally so they can debug with Safari for iOS and Chrome for Android. PhoneGap Build looks tempting and works well later for the team member on Windows who needs to run a quick build. Provisioning profiles and keystores still need care but the command line guides get them through.

Then reality shows up in small ways. iOS brings App Transport Security which blocks plain HTTP. The API must move to HTTPS or the app needs exceptions. They choose HTTPS and everything works again. On Android Marshmallow the runtime permissions model asks users for permission at the moment it is used. The team adjusts the push plugin and explains the prompt with a friendly pre permission screen.

The first beta on a couple of older Android phones feels sluggish on the schedule list. Images for speaker headshots are full size. They resize on the server add a memory cache and limit the number of DOM nodes rendered at once. Scrolling now feels fine. They also drop heavy shadows and blur effects and the UI becomes snappy.

Another hurdle appears. Some attendees still use phones with old WebViews. The team considers Crosswalk which ships a newer Chromium WebView inside the app. It improves rendering and fixes a couple of CSS glitches. The tradeoff is app size grows by many megabytes. For this use case the team stays without Crosswalk and instead tweaks CSS and JS to fit older WebViews. They test on a short list of target devices and call it good.

During review a tester spots that the hardware back button on Android exits the app from a deep screen. They wire it to go back inside the app first and only exit from the root view. Small detail big difference in feel. They also add pull to refresh on the schedule since people expect it.

Release day arrives. The app ships on both stores with a shared codebase a light native shell and a plugin or two. Push alerts notify about room changes and keynote time shifts. The team can update content from the API without touching the stores. For a fast project with a small team this felt like the right call.

Lessons learned

  • Choose PhoneGap for the right problem. Content driven apps forms data collection internal tools and companion apps are a sweet spot. Games or GPU heavy apps are not.
  • Keep UI simple and fast. Favor native feeling patterns. Avoid big shadows blur and nested scroll areas. Small wins add up on older devices.
  • Pick plugins with care. Use the smallest set you can. Read issues and check last updated dates. Pin versions in your config so builds stay predictable.
  • Budget time for store quirks. Icons splash screens signing profiles and metadata take longer than people expect. Plan a day just for that.
  • Test on the devices your users actually have. One modern iPhone and one modern Android phone are not enough. Borrow a couple of mid tier phones. Try bad networks and low storage conditions. You will catch real bugs.
  • Treat the WebView as a moving target. Use feature detection not user agent tricks. Polyfill only when needed. Keep CSS small and avoid layout thrash.
  • Think offline first for key screens. Cache the last known state and make writes resilient. Users forgive stale data more than they forgive empty screens.
  • Measure. Add simple timers for startup and key interactions. Use Chrome dev tools timeline and Safari Web Inspector. Fix the top three slow spots and ship.
  • Have an exit plan. If your app outgrows the WebView later, consider moving one screen at a time to native or evaluate React Native. Your backend and design system still carry over.
  • Know the cost of Crosswalk. It improves consistency on Android but adds size. Decide with your audience in mind and test download numbers on poor connections.

PhoneGap gives web teams a clear path to ship mobile apps fast with HTML CSS and JavaScript. When you pick it for the right kind of problem and respect the limits of the WebView it pays off. You get reach across platforms a familiar stack and a short time to store. When your goals require deep system hooks or extreme visual effects pick native. Both roads are valid. The trick is knowing which road you are on.

If you are starting today try a tiny proof of concept. One screen two buttons a call to a real API and a plugin. Ship it to a real phone. Feel the scroll feel the load feel the back button. That thirty minute test will tell you more than a week of slide decks. And it will make the next decision clear.

For searchers looking for the quick hit. PhoneGap is Cordova with Adobe extras. It packages your web app for iOS Android and more. It fits content heavy apps and basic device access. It is not a silver bullet but in the right hands it is a practical choice.

Digital Experience General Software Multi-Channel Experience Software Engineering coding-practicesmobile-developmentweb-development

Post navigation

Previous post
Next post
  • Digital Experience (94)
    • Experience Strategy (19)
    • Experience-Driven Commerce (5)
    • Multi-Channel Experience (9)
    • Personalization & Targeting (21)
    • SEO & Performance (10)
  • Marketing Technologies (92)
    • Analytics & Measurement (14)
    • Content Management Systems (45)
    • Customer Data Platforms (4)
    • Digital Asset Management (8)
    • Marketing Automation (6)
    • MarTech Stack & Strategy (10)
    • Technology Buying & ROI (3)
  • Software Engineering (310)
    • Business of Software (20)
    • Code (30)
    • Development Practices (52)
    • Digital Transformation (21)
    • Engineering Management (25)
    • General Software (82)
    • Productivity & Workflow (30)
    • Software Architecture (85)
    • Technical Implementation (23)
  • 2025 (12)
  • 2024 (8)
  • 2023 (18)
  • 2022 (13)
  • 2021 (3)
  • 2020 (8)
  • 2019 (8)
  • 2018 (23)
  • 2017 (17)
  • 2016 (40)
  • 2015 (37)
  • 2014 (25)
  • 2013 (28)
  • 2012 (24)
  • 2011 (30)
  • 2010 (42)
  • 2009 (25)
  • 2008 (13)
  • 2007 (33)
  • 2006 (26)

Ab Testing Adobe Adobe Analytics Adobe Target AEM agile-methodologies Analytics architecture-patterns CDP CMS coding-practices content-marketing Content Supply Chain Conversion Optimization Core Web Vitals customer-education Customer Data Platform Customer Experience Customer Journey DAM Data Layer Data Unification documentation DXP Individualization java Martech metrics mobile-development Mobile First Multichannel Omnichannel Personalization product-strategy project-management Responsive Design Search Engine Optimization Segmentation seo spring Targeting Tracking user-experience User Journey web-development

©2025 CMO & CTO | WordPress Theme by SuperbThemes