What is a hybrid application?
A hybrid application is a software app that combines elements of both native and web applications. Hybrid apps are essentially web apps that have a native app shell. Once users download the app from an app store and install it locally, the shell connects to whatever capabilities the mobile platform provides through a browser that's embedded in the app. The browser and its plug-ins run on the back end and are invisible to the end user.
Hybrid apps are popular because they allow developers to write code for a mobile app once and still accommodate multiple platforms. Because hybrid apps add an extra layer between the source code and the target platform, they may perform slightly slower than native or web versions of the same app.
Features of hybrid applications
Hybrid applications features include the following:
- the ability to function whether the device is connected or not;
- integration with the mobile device's file system;
- integration with web-based services; and
- an embedded browser to improve access to dynamic online content.
How hybrid applications work
Although a hybrid app will typically share similar navigation elements as a web app, whether the application can work offline depends on its functionalities. If an application does not need support from a database, developers can make it function offline.
Hybrid application pros and cons
Pros of hybrid apps include the following:
- will operate on different platforms;
- faster build time compared to native apps;
- cheaper to develop compared to building two versions of a native app for two different platforms;
- easier to launch patches and updates; and
- can work online and offline.
Some cons, however, include the following:
- Variations due to leaning development on one platform may occur -- for example, if a development team leans their work on one platform, another supported platform may lack in quality or suffer from bugs.
- The appearance of an application may vary from platform to platform.
- Developers need to test the application on a range of devices to ensure proper operation.
- User experience (UX) may fail if the user interface (UI) isn't similar to and well enough designed to what browsers the user is used to.
Hybrid vs. native vs. web
Developers build native applications specifically for the platform they are installed on. Native apps can take advantage of a mobile device's hardware, including the accelerometer, GPS and camera. Developers write native apps in the same language the platform's operating system is written in. For example, a native iOS app should be written in Objective-C and Swift.