The usage of Mobile Apps continues to be tremendously increasing in the last 2-3 years. There is a lot of scope for expansion in this subject. Almost all leading software companies are focusing on mobile app development. However, time and investment are turning out to be challenging.
An application built for an Android device won't be compatible with other devices, and the efforts are to become repeated so as to make that app suitable for other devices. This resulted in the requirement for cross platform mobile apps. These apps limit the efforts of the developer for creating or testing mobile phone applications on various platforms. The theme of those tools is very simple, the developer can create apps using any custom language (java or vb.net or HTML or any other scripting language). When the design and execution of the app is completed, the developers can use an easy function to generate exactly the same functional app for just about any mobile platform form of Android, Blackberry, or iOS or other mobile platform.
Re usability of code, reduced development costs, and easy deployment are the benefits of using cross-platform networks. There are numerous cross-platform frameworks available. Some of the best ones are PhoneGap, Appcelerator Titanium and Rhodes. Let's talk about the salient options that come with each of these 3 frameworks
2) Appcelerator Titanium: Appcelerator is renowned for their revolutionary product, Titanium, which allows web developers to create mobile applications without learning Cocoa-Touch or Java. Titanium is actually an API and run-time which lets you build a web application and deploy it to a mobile phone, or run it on the desktop. A Titanium Mobile Web app is designed to be run from the web server. You are able to successfully run it from the browser like a local file also. The primary drawback with Appcelerator is that it doesn't have Android Emulator, an online mobile device that operates on your pc, which lets the developers to develop and test Android applications without needing a physical device.
3) Rhodes: Rhodes is an Mobile App Development framework from "Rhomobile" that enables developers to build up sophisticated mobile apps that may be deployed on virtually all of the mobile platforms like iPhone, BlackBerry, Windows Mobile, Symbian and Android.
Rhodes uses HTML for interface development. Thus, instead of needing to get the UI in Objective C, C++, Java, or.NET for every device, it's possible to do it once in HTML and deploy on all the devices. Rhomobile claims that, "You don't even have to know much about Ruby. HTML was chosen because of people's knowledge of it." This method speeds up the development process, even though you only want to launch on one device. Their developers claim that using Rhodes to develop a mobile app takes about 1/5 time of building it natively while using device's standard tools.
Rhodes is dual-licensed under the GPL and a commercial license. Open-source Developers make their apps using the GPL version of the framework and want not pay $ 1 to Rhomobile. On the other hand, the commercial developers may license the commercial form of Rhodes and negotiate whether revenue share or per-seat fee with Rhomobile.
With that said, the cross platform mobile development tools are still not considered be panaceas. Despite the fact that most of these tools are still evolving rapidly the mobile platforms are evolving much more rapid pace. Major platform vendors are competing against each other to create loads of functionalities and capabilities to life. You could expect some surprises when testing exactly the same functionality on different platforms/devices. Cruising to think about when designing a brand new functionality that doesn't appear in the cross platform may take much more time for you to its cross platform counter part. When the application is getting complicated and time for you to bring in new enhancements, you cannot assume it would be breeze anymore.
Though it may be easier to construct proof of concepts and prototypes using these cross mobile frameworks, we ought to better assess the nature of the app, people that use the app, performance requirements and ease of maintenance and adapting enhancements.