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

Aem mobile and phonegap what worked what didnt

Posted on November 26, 2016 By Luis Fernandez

Everyone keeps asking the same thing. Can AEM Mobile and PhoneGap ship real apps without turning your team into a support group for build errors.
Short answer. Yes, with a bunch of footnotes.

I have shipped content heavy apps with Adobe Experience Manager Mobile tied to PhoneGap Cordova shells. Some parts felt like plug and play. Some parts felt like changing a tire while the car is moving.

If you are staring at a whiteboard choosing between a pure AEM Mobile approach, a Cordova app that talks to AEM, or a split model, this is the field report. What worked. What did not. And where the real tradeoffs sit.

What worked right away

Authoring speed for content apps. For magazines, catalogs, learning content, and internal comms, AEM Mobile’s article and collection model fits like a glove. Editors use AEM templates or HTML packages, hit publish, and the content shows in the app within minutes through the AEM Mobile service. No app store review. No new binary. That alone saves weeks over a quarter.

Cards and layouts are friendly. The visual designer for cards, layouts, and menus is simple enough for non developers. You can roll out a seasonal redesign without poking at native code. The ability to target a layout to a collection gives you decent control over look and navigation without writing a custom shell.

Push and analytics in one place. With Adobe’s mobile SDK in the viewer you can wire push notifications and basic analytics without a tour of third party dashboards. For marketing teams living in reports all day, this matters. It is not a data scientist’s dream, but you get screens, taps, and funnels with a few settings filled in.

PhoneGap for device stuff. Need the camera, barcode, local storage, or geolocation. Cordova plugins still cover a lot. For a good chunk of use cases, a thin Cordova layer around AEM Mobile content works. The web view loads your HTML articles while the plugin bridge does the phone things you cannot get with plain HTML and CSS.

Enterprise distribution. If you are doing internal apps, AEM Mobile plus an enterprise certificate plays nice with common MDM tools. The fact that content updates do not require a new binary also makes security teams smile. Less churn in binaries means fewer trips through long approval queues.

Bottom line that worked. Editorial teams can ship content fast. Developers glue on a few native bits with PhoneGap. The app looks branded and feels current without heroics.

Where it got messy

Viewer limits and deep custom UI. AEM Mobile’s viewer gives you menus, cards, search, and banners. If you want a very custom nav pattern or fancy gestures, you start to fight the shell. Yes, there is Cordova in the viewer, but not every plugin or native UI trick plays well inside it. Heavy custom chrome pushes you toward a full Cordova app that only uses AEM for content, not the AEM Mobile viewer.

Offline behavior surprises. Caching is pretty good for articles and banners, but it is not a full sync engine. Editorial assumptions like everything is always cached break fast in spotty networks. Large collections with lots of images made first launch feel slow for some users. We had to design with staged loading and smaller article bundles instead of one giant package.

Build pipeline friction. PhoneGap Build looks like a shortcut until you hit custom plugins or complex signing. At that point you end up back in Xcode and Android Studio. On iOS the jump from UIWebView to WKWebView is tempting for speed, but WKWebView brings cookie quirks and file URL headaches. Cordova has plugins to help, just plan time to test and adjust your auth and asset paths.

Authentication drama. Single sign on with corporate identity providers worked, but it was not a two click setup. Between ATS rules in iOS, redirects, and token persistence in the web view, you want someone who actually enjoys auth. Expect to work with IT on allowlists, certificates, and timeouts. Once configured, it is fine, but reaching that point took more hours than we thought.

Search and deep linking. AEM Mobile search is OK within the app. Deep linking from email or the mobile site into a specific article is possible, but the route is narrow. Getting universal links on iOS and app links on Android to land users in the right collection and article took careful URL design and a few custom handlers. Not rocket science, just careful plumbing.

Team split brain. There is a real line between AEM authors and mobile devs. If your authors publish a layout pattern that does not match the Cordova shell expectations, you get weird states. We ended up writing a simple checklist and a content freeze window for releases. It is process, not code, but it matters.

Costs are real. AEM Mobile is a separate license. If all you need is a lightweight hybrid app with a few pages and some device features, plain Cordova or Ionic might be enough. If you are running an editorial team and want rapid content updates without new binaries, the license can pay for itself in time saved. Know your use case.

The choices we made and why

We kept the viewer for content apps. For a news and learning app, we stayed inside the AEM Mobile viewer and leaned on its layout system. We put our effort into great typography, media loading, and a few small extensions. The win was fast publish cycles and fewer app store submissions. Editors were happy. Users got fresh content without waiting for a new build.

We moved to a pure Cordova shell for heavy custom UI. For an events app with live maps, ticket wallets, and aggressive nav transitions, we built a Cordova app and treated AEM as the content source through APIs and HTML packages. This gave us freedom on the shell and plugin choices. We still reused some AEM Mobile packaging ideas, but we did not ship the AEM Mobile viewer there.

We drew a line on plugins. We maintained a short list of Cordova plugins that we trust. Camera, barcode, in app browser, network, and storage. If a new feature request needed another plugin, we evaluated it against two questions. Will it make the app crashy in the viewer. Can we support it across iOS and Android without weird forks. If the answer was no on either one, we pushed for a web only pattern or moved that feature to a full Cordova app.

We tuned for offline first launch. We reduced article weight, split jumbo content into smaller pieces, and preloaded the next article quietly. On first launch we focused on getting to first interaction fast instead of trying to cache the whole world. A simple in app cue told users when a collection was ready offline. This calmed support tickets from travelers and field teams.

We hardened auth early. With ATS tightening by the end of the year, we moved all endpoints to TLS with modern ciphers, pinned where needed, and cleaned every redirect. We tested token refresh on poor networks and made the sign in state visible. That saved us from a storm of weird sign outs after launch.

  • Use AEM Mobile when your core is articles, collections, and frequent content updates, and the app chrome can stay close to what the viewer offers.
  • Use a Cordova app plus AEM when you need a custom shell, a broader set of plugins, or tight control of navigation and performance.
  • Mix with care. AEM Mobile viewer plus a handful of well tested plugins can cover a lot, but do not turn it into a science project.

Tip for the build chain. If you use PhoneGap Build to get moving, budget time to move to local builds before launch. You will want full control of signing, plugins, and native project settings. Keep a repeatable build script and document every step. Future you will send a thank you.

Plan your deep links and data model up front. A simple and stable URL scheme for articles and collections saved us from weird redirects later. It also made marketing happy because campaigns could link straight into a page. We mapped one URL per article and kept it human readable. That helped analytics and support as well.

Keep design honest about web view limits. Fancy scroll physics, overlapping video and canvas tricks, and heavy animation stacks are still touchy inside a web view, even with WKWebView. We picked our moments. Smooth type, good spacing, crisp images, and fast first paint won more praise than a wild transition that dropped frames.

Do not skip device labs. iOS 10 and Android Nougat are here, but your users are not all on the latest. A mid range Android phone on a slow network will find any lazy bundle you ship. We kept a small device lab and ran smoke tests on every content release. It paid off every week.

Document the author workflow. A one page checklist with naming, image sizes, and publish order cut errors by a lot. Editors want to ship. Give them guardrails, not guesses. Version layouts and card settings just like code. Roll back fast if needed.

Be clear about budget. AEM Mobile delivers speed for content teams, but it is not cheap. If the app is a channel that needs weekly updates and measured outcomes, that cost is part of doing real mobile. If the app is a one time event, a simpler Cordova or even a responsive site with a save to home flow might be smarter.

Watch the web app story. Service workers are getting real on modern browsers. For some public content apps, a fast mobile web experience with add to home and offline caching can meet goals with less moving parts. If you already own AEM Sites, that path is appealing. For internal or store distributed experiences, AEM Mobile still shines.

Side note. If you are new to Cordova, do not stack five plugins without testing each one alone first. One bad plugin can make you think everything is broken when it is just that one bridge.

Looking back to move forward

What did we learn. AEM Mobile is great for teams that live on content. Editors can ship fast, designers can evolve layouts, and the app stays fresh without new binaries. When you need custom device features, a small layer of PhoneGap can cover the gap if you keep the plugin list tight. When the shell itself needs to be special, build a Cordova app and let AEM feed it.

The misses were mostly about expectations. A web view is still a web view. You can make it fast and smooth, not magic. The viewer gives you a lot, not everything. Auth takes time. Build pipelines always take longer than the napkin said. Plan for those and you will be fine.

On the bright side, we shipped useful apps and kept the content flowing. The combo of AEM Mobile plus PhoneGap can be a strong move when the problem is content first and the feature list stays grounded. Pick your lane, keep your plugins in check, and make friends with your editors. That is what worked.

Content Management Systems Digital Experience Marketing Technologies Multi-Channel Experience AdobeAEMmobile-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