With the technological development in recent years, precisely in the middle of 2007 with the emergence of Apple’s iPhone and soon after Google’s Android, the world learned a new way to communicate, interact, work, teach, research and have fun through mobile apps present in smartphones, tablets and other devices that are compatible with this technology. Today, over one billion people already use it. This has also resulted in relation to new strategic business views in various industries.
But what has been drawing attention is that most mobile applications developed and published in the shops (Google Play, Apple Store and Windows Market Place) follows the same premise: developed in native platform in need of internet connection to function.
This is a very biased way in proposing solutions, making it most often a vicious cycle in developing mobile applications. And it often would not be the best way to innovate or solve a business need itself.
This article presents a solution that escapes the usual. An offline mobile and hybrid solution will be displayed. Offline to meet businesses that are unable to access the internet, and hybrid to be coded once and made available on any device, regardless of your system (Android, iOS or Windows Phone).
The classical concept of hybrid refers to the act of mixing. By mixing two or more different elements, the result is the opposition of the natural order of things. The hybrid mobile applications emerged from this concept, between the junction of native and web.
Hybrid applications will work the same way as native applications, however:
• Requires a lower cost in development compared with the native ones, so to maintain a source code only, not needing to develop a code for each platform;
• To apply regular updates on the applications, there is a huge advantage over the native ones, applying the update only once.
Another key point is that there is a huge range of frameworks that follow the hybrid philosophy: jQuery Mobile with PhoneGap, Sencha Touch, Titanium, ZeptoJS, etc. These frameworks provide a suite of ready components that expedite application development.
The HTML5 came with the intention to meet the needs of modern web development. The mobile applications are the main protagonists who use that language. It allows that the apps behave like native apps.
The main feature for this purpose is the storage of variables and data bases embedded in the device through the Local Storage and WebSQL:
• Local Storage: storage is temporary, formed by pair (key / value), remaining until the session is active;
• WebSQL: the way of storage follows the SQL database web specifications, which offers all the structure already known by most developers such as tables, primary keys and foreign keys.
The Web SQL allows the application to keep the data stored inside the device without Internet access.
It is a scripting language (code snippets) for web, totally dependent on a browser. It is integrated into the client-side HTML pages being mainly used to manipulate information and objects from an HTML page.
It is charged along with the website, being an interpreted language that has no need of any compiler and has also weak typing (declaring variables does not need to inform a type like String, int, double, etc.).
Hybrid Applications in Scriptcase
In Scriptcase, all applications created automatically adapt to the device that accesses it. The menu application, for example, is created using HTML 5 and automatically adapts the device that accesses it.
The application form is a little different. Having created its source code, Scriptcase creates two different folders, one with the specific source code for desktop applications and another folder with the source code to be used for mobile devices.