The mobile application landscape is rapidly changing and evolving. New tablets and phones of all shapes and sizes are being conceived, created and released at an ever accelerated pace. Google’s Glass and Apple’s iWatch are confirmed and rumored new form factors just around the corner.
There are mobile websites. There are mobile applications. There are mobile application stores. There are even multiple ways of distributing mobile applications.
Clearly the options and possibilities are vast and potentially confusing. At MINDSCAPE, we typically take the approach of assessing a partner’s need and then compare that to the current and future mobile landscape to find the best fit.
Today’s mobile development options generally fit into one of three basic types:
Option 1 – Mobile Websites
Mobile Websites are the most basic option. They’re essentially an alternate version of a website which is presented differently for mobile users.
Advantages
Supporting a wide variety of devices is relatively easy.
Disadvantages
They are only available when the device has internet access. They have very limited or no access to hardware and device specific items such as: cameras, storage, image libraries, audio, accelerometer, GPS, bluetooth, etc. They can’t be distributed through app stores such as those maintained by Apple, Google and BlackBerry.
Option 2 – Native Mobile Application
On the opposite end of the spectrum from a Mobile Website is a Native Application. A Native Application is developed using the proprietary toolkit and methods supplied by the manufacturer of an individual device or ecosystem.
Advantages
Applications developed in this manner don’t necessarily need internet access to function. They have access to almost all capabilities of the phone, tablet, or target device. The applications tend to be very quick and responsive feeling. Applications can be distributed through app stores for public consumption or sales. Applications can even be distributed and controlled across the enterprise.
Disadvantages
Only a single operating system is generally supported. Typically this means programming the same application twice to support Apple devices and Android devices. The problem can be compounded when trying to support additional outliers attempting to gain market share or re-establish their relevance (BlackBerry, Microsoft, Firefox OS, Tizen)
Option 3 – Native / Web Hybrid
Hybrid application development uses a combination of native and common web technologies to provide an application that has many of benefits of Mobile Websites and Native Applications.
Advantages
Applications developed in this manner don’t necessarily need internet access. They also have access to most of the hardware capabilities of the phone, tablet or device. They can be distributed publicly through an app store or through a controlled enterprise distribution. 90% of development efforts in this type of solution can be shared; therefore, developing an application for an iPhone allows it easily be converted to work on Android or other platforms.
Disadvantages
Not all applications are well suited for this type of development, and certain types of device hardware interaction may not be available. Applications that will be heavily graphical (game development for instance) are better suited to Native Mobile development practices.
Which Option is Right for My Application?
Determining which mobile development option is right for your application can roughly be determined by thoroughly answering the following two simple questions:
What Functionality Do I Need?
Functionality requirements generally translate to applications as follows:
- High (many or exotic features) – Native Mobile Application
- Moderate (moderate number of features) – Native Web / Hybrid
- Low (relatively few features) – Mobile Website
What Devices Do I Want to Support?
Device support requirements generally translate to applications as follows:
- High (Many many devices) – Mobile Website
- Moderate (Several device platforms) – Native Web / Hybrid
- Low – (One or maybe two platforms) – Native Mobile Application
Here at Mindscape, we assess mobile requirements and develop applications for our partners all the time. Please contact us today if you’re interested in assessing your mobile requirements or need help categorizing your functionality / device requirements.