Synapseindia Reviews Cross Platform Mobile Application Development
So. . . • According to the Global Developer Survey ’13 conducted by
Telerik, over 5000 developers said that they developed apps using HTML5 in 2012 and 90% of them plan to do so in 2013. • Only 15% of developers said they would prefer to use a native-
only approach.
Why Cross Platform • What your app will do? • Who it’s for? • Where it will run? • Do you maintain different and completely independent apps for
each platform? • Design a hybrid app with one code base? • Pros and cons?
Main Features • Support Web Services ranging from JSON, XML, SOAP, HTTP
etc. • These tools cannot access device specific feature like the
bluetooth, NFC and other controls. • Source code is typically organized in the MVC format
separating data tier, application and the interface. • Problem with compiling iOS Applications
Titanium •
Developed by Appcelerator Inc.
•
Titanium is free and opensource
•
Apps written in javascript
•
Support to build Android, iOS and Blackberry Apps, trying to extend support for Windows.
•
Interpreter for Android and BlackBerry is MozillaRhino, for iOS JavascriptCore
•
Native experience – ‘not quite there’
•
Source code organization
•
Device Specific Functionality – No built in support for Bluetooth and NFC.
•
Web services – SOAP, XML, JSON
•
Code maintenance
•
MBaaS support
PhoneGap • Developed by Adobe Systems • Free and opensource • Apps written in HTML5, CSS3 and Javascript • Support for Android, iOS, Blackberry, WebOS, Windows
Phone, Symbian and Bada. • Apache Cordova is the heart of the backend. • Performance limited because of hybrid nature of the app. • Source code organization • No built in support for Bluetooth and NFC. • No Web services support built in.
Rhodes • Developed by Motorola. • Native app like feel. • Apps written in Ruby and recently extended for JavaScript • Support to build Android, iOS, Blackberry Apps, Windows
phone and Mobile. • Source code organization • Device Specific Functionality – No built in support for
Bluetooth and NFC. • Rich web service support built in. • Free but not for commercial users.
Sencha Touch • Over 50 built-in components. • Built-in MVC system • Apps written in HML5 and CSS3. • Sencha Touch 2.2 is the latest version • Faster, Cheaper and highly customizable • PC developers can now create iOS applications without
needing a Mac. • More than 500,000 developers • Rich set of documentation
jQuery Mobile • Built on the rock-solid jQuery and jQuery UI foundation • Its lightweight size makes it a speed freak • JQuery Mobile 1.3.1 recently launched • AJAX-powered navigation system • Extensions are easy to make • No established architecture • Easy to debug • Markup-based and is backed by a smart community
What is good about CPD? • Implement a feature once and share it across platforms • Using a webview might be faster than writing a native
implementation for simple screens • Update content without requiring a full app release by serving
your pages off a server • One tool to create, debug, and deploy. • Speed increases and cost decreases • Multiple security methods aren’t needed • Simple for web developers to use
Cons • Requires a bridge for their pages to interact with native chrome
and call native APIs • Maintain a fork, if new functionality is added • Write a little code, run it on iPhone, Android, Windows Mobile
simulator. • Several straightforward implementations for a single complex
implementation. • Harder problems are inconsistencies in platform conventions. • Maybe web technology will one day be as fast as native code
What does it all boil down to?
Questions