Write it once and deploy on many platforms. As an innovative digital agency, we get this request often from clients. This is the ultimate goal of mobile application development. Clients want to hire an agency to develop one mobile application that runs natively and can be deployed to Apple iTunes, Blackberry AppWorld and the Google Play store (previously Android Marketplace).
Adding to the confusion: Shifting industry standards on what mobile compatibility really means. Buzzwords and application framework providers toss around an alphabet soup of technologies: HTML5, jQuery, Sencha, Appcelerator, Mono, PhoneGap. (I’m sure there are plenty more where those came from.)
In the real world, this is how we define mobile project categories at Imaginuity. We hope this overview provides some clarity for our shared understanding.
If planned well at the onset, most websites can be viewed and be at least somewhat functional across most platforms. This means the desktop browser-based experience will look similar on your mobile device. Typically you would access the mobile experience via the same web address like www.domain.com. The exception to this is sites with Adobe Flash technology that is not compatible with Apple products and limited on many Blackberry devices.
- Pros: Cheaper and easier to maintain than building two sites; a common codebase across all platforms
- Cons: You can’t optimize the experience for a specific screen size; you get no visibility in app stores
Separate mobile website
This is an optimized user experience that runs on the mobile device via the mobile device browser. The user experience is different compared to the desktop version of the website; most separate mobile sites are designed for navigation with your finger or a stylus, vs. the desktop mouse.
An optimized website can be written once and have it operate in an optimized fashion across multiple MOBILE platforms and devices. Typically you would access this mobile experience via a specific mobile web address like m.domain.com or mobile.domain.com.
- Pros: Optimized experience for specific mobile screen sizes; can have common codebase across various mobile platforms
- Cons: No visibility in the app stores; more expensive and difficult to maintain than mobile-friendly site
Native mobile application
These are the apps that everyone is talking about; applications that you download from iTunes or the Google Play Store and install directly onto your mobile device. The app runs natively on your device.
There are development acceleration platforms available including Appcelerator and Monotouch. These technologies allow you to write code in one language and deploy it on multiple platforms. A very important point here: NO technology framework currently can optimize design for each platform.
- Pros: You deliver an optimized experience for specific mobile platforms; you get visibility and traffic at the app stores
- Cons: This can be the most expensive option; apps take more time and effort to maintain and upgrade vs. a separate mobile site
Which brings us back nicely to the starting point of this blog. Unfortunately, right now there is no silver bullet for easy-fast-functional mobile application development across multiple devices and platforms. Most of our clients and potential clients want a native mobile application experience. Many mobile device users think if it does not download from an app store, it’s not a real app.
Buyers, beware. The fact remains that we want to build it once and deploy it on many platforms, but any technology or software or agency that promises to do this is not being realistic.
Why? An Apple iPad does not have the same resolution or functions as a Samsung Galaxy tablet. Nor does a Motorola Razr have the same resolution as an Apple iPhone. Multiple device and platform deployment requires up-front analysis and planning:
- Device functions vs. application requirements
- Optimization of design elements for screen orientation and resolution
- End user audiences’ technology common denominators
- Future updates and revisions
- Many other factors
Industry-wide standards need to be hashed out and implemented before an optimized experience can be delivered across multiple devices and form factors, from writing code once. And realistically, this is highly unlikely because the ecosystem is filled with competitors, each working to make their intellectual property dominant.
Meanwhile, the proliferation of mobile applications has now brought forth a new trend and terminology: App clutter. Apps have become commonplace like channels on your television. Everyone is vying for your attention, but most of us really only focus on a handful. How often do you use that app you have on the fourth screen of your iPhone? Probably never. How much are you willing to pay for an app, if similar content is available for free on a mobile site? Probably not much.
Plan ahead for the long term. Think about how you want your audiences to interact with your website/mobile site/app, prioritize your goals, consider the dominant technologies today and in the future, and this will lead you to the best way(s) to connect with your audiences.