Mobile Web Application Development

Can we write an application that runs across various mobile phone platforms like Android, Iphone, Blackberry, WebOS etc? A web-based framework makes this a reality.

A multiple phone web-based application framework is a software framework that is designed to support the development of phone applications that are written as embedded dynamic websites(using HTML,css and Javascript) and may leverage native phone capabilities, like Geo data or contact lists.

A native app is one that is specifically designed to run on a device’s operating system and machine firmware, and typically needs to be adapted for different devices. Native apps have a much better experience than web apps, especially on slower devices (like the iPhone). The reason that native apps greatly out perform web apps is that there is a lot more processing power used to render website than it is to render native apps because websites need to run through back-end engine, such as WebKit. These applications are highly specific to a particular mobile operating system and are not portable on other platforms. On the other hand, a web-based applications are typically written with HTML, css and Javascript. They can be deployed on any of the platforms, since all these platforms usually have WebKit as the back-end rendering engine. This reduces a lot of time and effort of the developers as it is much easier to write the web apps than the native apps. It also gives an edge to various organizations as a single app developed can be deployed on various platforms, increasing the scope for the business. They support various features like camera access, Geo Location(or GPS access), Accelerometer access, Audio/Video capabilities and contact access. They also provide Touch/gestural interfaces and support Swipe, tap, scrolling lists etc. The HTML5 apps are also capable of dynamically adapting to the view-port size in both portrait and landscape modes on mobile phones as well as on tablets.

Bluetooth access is one feature that HTML5 has not addressed yet. HTML5 graphics performance for fast-moving games that have a lot of animation can’t match native’s performance, and probably won’t for some time to come. But for pretty much anything else, HTML5 is good enough.

With mobile device manufactures each having its own preferred development environment, a growth mobile phone application developments that are World Wide Web capable and a large population of HTML savvy developers, there has arisen web-based application frameworks to help developers write applications that can be deployed on multiple devices. A number of such frameworks are available in the market such as JQTouch,SenchaTouch(from Sencha), and Qooxdoo. All the three frameworks have support for IOS and Android. Senchatouch has support for Blackberry. Qooxdoo has best look and feel out of all the three and can also be used for Desktop environment. But Qooxdoo has a huge code base and writing applications on the framework is much more complicated. JQTouch has much lesser code complexity when compared to SenchaTouch and Qooxdoo. It has support for various UI features like form elements and lists, animations like swipe, scroll etc. All these features make JQTouch more feasible to be deployed on iOS and android.

Accessing Native Services- the Phonegap:

Phone-gap is an open source solution for building cross-platform mobile apps with HTML5, CSS and JavaScript. Phone-gap also provides a framework to access the native services of mobile phones such as Accelerometer, Camera, Compass, Contacts, File, Geo Location(the GPS access), Media, Network, storage and notifications like Alert, beep and vibrate. Most of the features are supported across Android, IOS, WebOS, Symbian and Bada. The features of Camera, Geo Location, notification and call have been tested and found working on olive pad (android device) ,Geo location and call features work on iPhone 4. The other features need further investigation on different devices.


About Bhavani Anantapur Bache

I'm an enthusiastic and self-motivated Software Engineer with a passion for building cutting-edge innovative products related to Embedded Systems. In a career spanning over 6 years in Software/Hardware technologies, I got involved the leading an entire software development life-cycle of projects from understanding the requirements and scope, product design, writing code, writing automation tests, documentation, debugging and fixing issues to release of the product to the customer. Such experience contributed towards my advanced proficiency in C++ and object-oriented programming. I liked working on Linux operating system, Linux shell scripting, writing Makefiles and Python. I enjoy solving complex problems and actively participate in programming challenges. I have a passion for innovation with a proven track record of publications in the international journals and conferences, in the areas of Signal Processing, Data Mining, and Machine learning. Currently, I'm working on building novel solutions using signal processing, data mining and machine learning methodologies. I aspire to build new products that would leverage my unique background in software, hardware, and machine learning and that would make a significant impact on the end user.
This entry was posted in Technology. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s