Chapter 13. Hybrid Mobile Applications

The word hybrid means something of mixed origin or composition. In the realm of mobile web applications, such a mix consists of the code written in HTML5, which accesses the APIs written in native languages. If an organization doesn’t want or can’t hire separate teams of software developers (for example, Objective-C developers for iPhone, Java for Android, C# for Windows Phone), there is a way to have one team of developers with HTML/JavaScript skills who can develop applications by having the same code deployed on various mobile devices packaged as native applications. Let’s do a quick comparison of native, web, and hybrid mobile applications.

Native Applications

We call a mobile application native if it was written not in HTML/JavaScript, but in a programming language recommended for devices of this mobile platform. The manufacturer of mobile devices releases an SDK and describes a process for creating native applications. This SDK provides an API for accessing all components (both hardware and software) of the mobile device, such as phone, contact list, camera, microphone, and others. Such SDKs include UI components that have a native look and feel, so applications developed by third parties look the same as those developed by the respective device manufacturer.

Native applications can seamlessly communicate with one another. They can use all available hardware and software components of the device to create convenient workflows to which people ...

Get Enterprise Web Development now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.