Should you design your mobile applications as native, hybrid or HTML 5?

Native, Hybrid and HTML 5 icons

Healthcare and information technology are two niches that have not traditionally been associated. However, with the evolution of the healthcare industry has come the need to be more efficient, affordable and effective. This is how the birth of digital health came about. Adaptation of technology in healthcare required skill sets from both industry to merge. Specifically in the mHealth sector of digital health, health applications in the medical and health and wellness industry are increasingly being used. How does one go about developing an app or more specifically, what does one need to know when choosing the type of application to be developed?

Companies and organisations want their connected applications to run on the desktop, tablets and both on iOS and Android phones. Native, hybrid and HTML 5 are the 3 different development technologies for designing and developing these connected applications. The choice of which technology you use will depend on what time pf application you are building, who are you most valuable users and what is the development cost and time that is acceptable both sort and long term.

Native apps

Hybrid apps

HTML5

Native apps have a direct line to the operating system and hardware so they can run faster and are more secure, but they run only on their targeted platforms (e.g. desktop, iOS, Android, Windows Phone)

Hybrid apps are mobile applications where the core application is developed using HTML5, JavaScript and CSS.

However, developers can use a wrapper or integrate custom code to take advantage of select native device functionality such as camera or accelerometer or system-level functions such as notification.

HTML5 apps are cross-platform mobile applications, written using the standard web technologies: HTML5, JavaScript and CSS.

They run on multiple device since they mostly run in web browsers.

How does the choice of technology impact your organisation?

The choice of native, hybrid or HTML 5 for design and development of your connected app will directly impact:

  • Time to market
  • Design and development
  • Ratio of in-house to external design and development resources
  • Level of device flexibility
  • Features and functionality
  • User acceptance that translates to tangible value-add
  • Level of security
  • App update and refresh cycle

What are the key questions to discuss with your team of developers and how does each technology stack up?

What app requirements/features are essential in this release?

Native

Hybrid

HTML5

Requires computing power

Yes

Constrained

Low

Rapid changing graphics or fluid animations

Fastest

Constrained

Slow for many

Update interface without new download, run A/B test

No

Some

Yes

Familiarity

High

Mostly High

Low

Distribution

OS App Store

OS App Store

Web


What level of device access do we need?

Native

Hybrid

HTML5

Camera

Yes

Yes

No

Notifications

Yes

Yes

No

Contacts, calendars

Yes

Yes

No

GPS, accelerometer, compass

Yes

Yes

Yes

Security

High- secure file storage and fast encryption

Medium- secure file system, shared SQL

Low- Shared SQL

Offline use/local data storage

Online and offline

Online and some offline

Mostly online

What is our development budget and how experienced is our development team?

Native

Hybrid

HTML5

Development & bugging tools

IDEs for rapid and precise develop, debug, test

Tools getting better but not as mature as native apps

Limited tools. Developers code in editor and debug in the 4 popular browser

Development speed

Slow

Faster

Medium

Development budget

High

Medium

Medium/Low

Developer skills

Objective C, Java, C#, Swift

HTML5, CSS, JavaScript, Mobile wrapper or API

HTML5, CSS, JavaScript


When should you absolutely choose native or hybrid over HTML5?

1. Offline access

Many mission-critical applications have to function whether connected or not (e.g. data capture, inspections and data analytics). While it is possible to accomplish limited offline functionality with pure HTML5, it generally introduces significant complexity, not to mentioned security and performance issues. As a rule, HTML5 is not a good choice if the user needs to manipulate and work with the data while disconnected and/or maintain transactional integrity for subsequent synchronisation. Native apps have no such limitations, offering unlimited, secure offline storage. Hybrid apps by default use HTML5 storage. A hybrid app for data-intensive mobile applications will require significant customisation. If offline storage and use is important for your application, you will want to choose native.

2. Complex applications

While native is costly because you have to rebuilt every platform, HTML5 can become even more costly in debugging and testing if you try to create a more than a simple, focused application. If you are developing an application with more than a single focus or an application that should “feel like” an iOS and Android app, you will want to choose native or hybrid.

3. Secure applications

HTML5 offline catching is not as secure or as well segmented as a native keychain encryption that protects each app with a developer certificate. File transfer encryption is possible but slower than native. Implementing even trivial security measures that is standard on native platforms can be complex tasks for HTML5 app developers. If security is important for your applications, you will want to choose native or hybrid.


You can also check out the infographic below courtesy of trga.ca :


Get in touch to discuss your next connected health initiative.

Start a conversation today