All Posts

When to develop your app with hybrid tools

legacy system migration

So you want to build a mobile app. Should you choose native or hybrid mobile application development? Each choice has advantages depending on your projected use and time to market.

What is a hybrid mobile application?

Mobile apps generally fall into two categories, native and cross-platform or “hybrid”. A native mobile application is just what it sounds like: it uses the SDK (Software Development Kit) and hardware features specific to a particular mobile operating system. Hybrid mobile applications also fall into two general categories, hybrid HTML5 apps and native cross-platform apps.

Hybrid HTML5 applications rely on back-end servers for handling application logic. These apps are designed for smartphones and tablets and use a native container to wrap a web app. They look and feel like native apps and have access to some of the device’s built-in capabilities like file storage, accelerometer, contact data, and notifications. Many hybrid HTML5 apps are built using Apache Cordova (previously known as PhoneGap).

Native cross-platform applications, often built using Xamarin or React Native, provide an experience that is closer to native apps. Developers can create a unified API running on top of a native SDK. Performance of native cross-platform apps is significantly better than that of HTML5 apps.

Popular tools for hybrid mobile application development

There are multitudes of mobile app development platforms, but the lion’s share of the market is held by Ionic, Xamarin, Apache Cordova, and Unity.

Ionic

The Ionic Framework is a very popular choice among mobile developers. It is build on top of Apache Cordova and offers many of the best features of both cross-platform and native development.

Ionic gives developers access to all of Apache Cordova’s plugins. It combines this with familiar Angular tools as well as its own UI library. Other features of the Ionic framework include a command-line interface and integrated emulators. It allows native-looking UI designs as well. With this combination of features, Ionic has a large following.

Xamarin

Xamarin uses both native libraries and C# wrapped in the .NET layer. This allows developers to use a mature language and framework, with up to 96% of the source code being reusable. It also allows developers to create a UI code layer that’s specific to a given platform.

Apache Cordova

Apache Cordova is widely used, both on its own and as the underlying build process for other cross-platform development tools. Cordova features HTML5, CSS3, and JavaScript and bundles all of this into a client-side package. It offers a lot of flexibility in selecting a JS framework. The downside is that rendering the UI through a web browser can be slow. Unlike Xamarin, Apache Cordova apps use a single UI for all platforms.

Unity

Unity is very popular for developing games and other 2D/3D applications. It supports not only iOS and Android but also Windows and Xbox. Unity is especially good at presenting 3D content. However, it can use a lot of memory, and performance issues can be hard to identify and resolve.

Native or cross-platform? Pros and cons

Which approach is the right one for your project? That depends on a number of factors, including the intended use of the app, budget, depth of integration with device hardware, and time to market.

Hybrid mobile application advantages

  • Faster initial speed to market: If a mobile app development project needs to be ready in less than about six months, hybrid tools will do the job.
  • Portable code: Maintenance is far simpler and cheaper with a single code base across platforms.
  • Access to plugins: Plugins provide access to various hardware/software capabilities.
  • Lower origination costs: Faster development + portable code = lower budget.
  • Exposure to a broad user base: Compatibility with more hardware and operating systems delivers your mobile content to a bigger audience.

…and disadvantages, mainly for game development

  • Speed: HTML5/CSS can be a heavy load for mobile device processors.
  • May not have access to *all* device hardware and/or OS capabilities
  • UI design issues: This applies more to apps where a single UI needs to meet design standards for multiple platforms. Users may have a steeper learning curve if the UI isn’t familiar.

In August of 2012, Facebook released its native iOS application. This new app replaced the original HTML5 version and solved several complaints about the old app. Its story illustrates many of the pros and cons of hybrid apps. Jonathan Dann posted his notes about the rebuild in Under the hood: Rebuilding Facebook for iOS. While there have been a lot of changes in the mobile development space since 2012, his experience is still worth reading.

Native mobile application advantages

  • Performance: Native apps are faster. Period.
    • This mainly affects games; modern smartphones can handle the demands of regular applications.
  • Tight hardware integration: There’s no need to depend on plugins.
    • Again, this mainly affects games. Other apps aren’t likely to need such deep integration with device hardware.

TL;DR

Hybrid mobile application development is faster and less expensive to maintain than native app development, while native apps offer superior game performance and tighter hardware integration. For the great majority of apps, hybrid tools will be the better choice.

Click to learn more about our commercial mobile apps and mobile workforce apps.

Recent Posts

My Personal Development Toolkit & History

I was just on the This Life without Limits podcast: audio here and video here! Purpose of this Post I wanted to compile a master list of concepts I’ve learned to drive personal transformation and how those concepts can be applied to one’s business / professional life. There is more content to come, but there’s […]

Preserve Data Quality – Prevent Errors with Technology and Build a Culture of Data Integrity

Data errors cost you more than you realize. Make better decisions and more money. Data accuracy is essential in insurance adjusting firms – it directly impacts your ability to make informed decisions and assess claims. It informs decision-making, improves efficiency, enhances customer service, and mitigates fraud. Data errors have many consequences, including incorrect assessments, claim […]

Reducing Customer Support Costs with Intuitive Software

Discover how replacing non-intuitive software with efficient solutions gives you an edge from a financial and operational perspective In the world of insurance adjusting, time is money. Yet, all too often, inefficient software drains both, leaving firms scrambling to keep their heads above the water and meet customer expectations.  Luckily, the situation isn’t all doom […]

Your Make vs. Buy Software Decision Greatly Impacts Your Business Success

Let’s compare off-the-shelf with custom software for insurance adjusting One of the most difficult aspects for insurance adjusting firms seeking digital transformation is the decision to make or buy software. It’s a strategic dilemma: Do you develop a custom software solution or purchase an off-the-shelf insurance software solution? What aligns best with your business goals, […]