Jump to content

Mobile development framework

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Jk1977 (talk | contribs) at 13:15, 27 June 2011. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

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 and may leverage native phone capabilities, like geo data or contact lists. For more general frameworks see List of rich internet application frameworks.

Current frameworks

Warning: this is not a full list of the best available frameworks. See Mobile_application_development#Platform_development_environment instead.

Feature PhoneGap iUI WorkLight QuickConnectFamily Big5Apps (discontinued) Rhodes Appcelerator Titanium MobileReflex iPFaces MoSync Canappi Jmango Eclipse Pulsar mobl Sencha Touch[1]
Website http://phonegap.com http://www.iui-js.org http://www.worklight.com http://quickconnectfamily.org http://big5apps.com http://rhomobile.com http://appcelerator.com http://mobilereflex.com http://www.ipfaces.org http://www.mosync.com http://www.canappi.com http://www.j-mango.com/web/ http://www.eclipse.org/pulsar/ http://www.mobl-lang.org/ http://www.sencha.com/products/touch/
Open Source License MIT New BSD No MIT GPL v2 MIT Apache Public License v2, Proprietary No closed source freeware GPL v2 (+ commercial edition) No MIT GPL v3 (+commercial edition)
Free? Yes Yes No Yes ? Yes Yes[2] No Yes No No No Yes Yes
Framework target Embedded applications Web Applications Embedded and Enterprise Applications Embedded and Enterprise Applications Web applications Embedded applications Embedded applications Enterprise Applications Enterprise Applications Embedded and Enterprise Applications Enterprise Applications Web applications
Development languages HTML, Javascript JavaScript, HTML and CSS JavaScript, HTML and CSS, Native code or a combination of both JavaScript, HTML, CSS for mobile and desktop apps. Objective-C, C++, PHP, Java, Erlang for Desktop and Server apps HTML, Javascript HTML, Javascript, Ruby HTML, Javascript, [PHP, Ruby & Python for Desktop apps] Java ME, C Sharp, Objective-C, JavaScript, Java, CSS for mobile and desktop apps. PHP, ASP.NET, Java C/C++ Objective-C, PHP, SQL ,JavaScript, HTML, CSS, Java, Silverlight mobl HTML5, CSS3 , Javascript
Platforms


iOS support Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Android support Yes Yes Yes Yes ? Yes Yes On Roadmap On Roadmap Yes On Roadmap Yes Yes
Blackberry support Yes Limited models Yes Yes ? Yes Beta version Yes Beta version No No Yes
Palm WebOS support Yes Yes For web apps Yes ? No ? On roadmap ? ? No Yes No
Symbian support Yes ? For web apps ? ? Yes ? On roadmap ? Yes Yes No
Windows Mobile support Yes[3] Yes Yes On roadmap ? Yes ? Yes On roadmap Yes On roadmap No
Other Device support Tablet, Desktop and Web environments Tablet, Desktop and Web environments Linux & Mac Tablets and Windows (Win32) Windows, Linux & Mac Linux, Windows Java ME beta version, general web browser through XSLT Java ME, Moblin Tablet and Web environments Webkit/Firefox desktop browsers Webkit desktop browsers (chrome,safari)
General


Enterprise data synchronization No No Yes Yes No Yes, via RhoSync No No On roadmap On roadmap Yes
Multi-Threaded Applications No No ? Yes ? Yes, via Ruby ? ? ? ? No
File uploading ? ? Yes Yes ? Yes ? ? ? Yes No
Image Library Browsing ? ? Yes Yes ? Yes ? ? ? On roadmap Yes
In Application Email ? ? Yes Yes ? ? ? ? ? ? Yes
Application distribution support No No Yes Yes ? Yes, via RhoGallery Yes, via cloud services AppStore, Cloud Services AppStore, Cloud Services On roadmap No
Distribution analytics No No Yes Yes No No Yes, via cloud services AppStore, Cloud Services AppStore, Cloud Services On roadmap No
Self contained, no web required Yes No Yes Yes ? Yes Yes Yes, Offline Support Yes Yes Yes Yes Yes, Offline Support
Web Services ? ? Yes Yes (XML/JSON AJAX) ? Yes (REST or SOAP with JSON or XML) ? ? ? ? Yes (PHP/MySQL - XML/JSON - HTTP/SOAP) Yes(JSON) Yes(JSONP, JSON)
'Mobile APIs support ? ? Yes Yes (SenchaTouch, JQTouch, etc.) ? ? ? ? ? ? Yes (Simple Connector Architecture, Facebook, Twitter, RSS, Twilio, AT&T -SMS, Location, IPTV)
Able to access the web for data Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Geolocation support Yes Yes Yes Yes Yes Yes Yes Yes Yes Cell-ID, GPS, DRM Yes Yes
Vibration support Yes Yes Yes Yes ? Yes Yes ? ? Yes On roadmap
Accelerometer support Yes, Blackberry requires OS 4.7 Yes Yes Yes Yes Yes Yes Yes ? On roadmap On roadmap Yes
Sound (play) support Yes Yes Yes Yes ? Yes Yes Yes ? Yes Yes
Sound (record) support Yes ? Yes Yes ? ? Yes Yes ? ? On roadmap
Camera support Yes ? Yes Yes Yes Yes Yes Yes Yes In beta Yes Using PhoneGap
Zeroconf (Bonjour) support ? ? ? Yes ? ? Partial[4] No No No No
XMPP support Yes ? Yes Yes ? ? Via JS No ? ? No
File system IO support Yes ? Yes Yes ? Yes Yes Yes ? Yes Yes
Gesture / Multitouch support Yes Yes Yes Yes ? ? Yes Yes ? ? Yes Yes Yes
Device Motion Event (accelerometer) support ? Yes Yes Yes ? ? ? ? ? ? ? Yes (iOS)
Device Orientation Event (accelerometer) support ? Yes Yes Yes ? Yes Yes ? ? ? Yes Yes (iOS)
Native date/time picker support ? ? Yes Yes ? Yes Yes Yes ? ? Yes No
SMS support Yes Yes Yes Yes ? Yes ? Yes ? Sending Yes No
Telephone support Yes Yes Yes Yes ? Yes ? No ? Yes Yes Yes No
Maps support Yes Yes Yes Yes ? Yes Via JS Yes ? Beta Yes
Orientation change support Yes Yes Yes Yes ? Yes Yes Yes Yes Yes Yes No
Contact support Yes ? Yes Yes ? Yes ? Yes ? ? No Through Phonegap
SQLite support Yes, not possible on Blackberry ? Yes Yes ? Yes Yes Yes No On roadmap No Uses onboard storage and back-end databases via service layer Yes
Native Language Application Development support No No Yes Yes No Yes via Rhodes extensions Yes No No No Yes
Graph Library Support ? ? Yes Yes ? Yes via HTML5 SVG or Canvas ? ? ? ? Yes
Other notes XML driven UI. transparent caching of resources & data

History

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.


March 6, 2008 - the first iPhone SDK beta is released to a limited number of developers (4,000).

March 12, 2008 - the first versions of the QuickConnectJavaScript, QuickConnectPHP, and QuickConnectErlang frameworks made available to the public. These were focused on easing browser - server communication. QuickConnectJavaScript was the basis from which the first versions of QuickConnect for the iPhone were developed.

April 8, 2008 - iPhone OS 2.0b3 Beta 3 is released to the same set of developers. Lee Barney begins development of QuickConnect for the iPhone as a hybrid application framework. This is the first iPhone SKD release that included the UIWebView component. This component allows applications to display HTML and CSS pages and run JavaScript. No database support was included at this time. QuickConnect for the iPhone development began. It was a port and partial re-write of the earlier QuickConnectJavaScript 1.0 framework that had been made available in March of the same year.

May 23, 2008 - Lee Barney publishes a seminal posting 'UIWebView Example Code' on the tetontech blog describing and providing source code on how to call from JavaScript to Objective-C and from Objective-C back up to JavaScript. This posting has had over 60,000 hits.

May 29, 2008 - iPhone OS 2.0b6 Beta 6 is released. This is the first version of the UIWebView that included SQLite database support.


July 11, 2008 - iPhone OS 2.0 and the first release version of the iPhone SDK released. All developers could now download the SDK if they registered.

August 2008 iPhoneDevCamp in San Francisco - Nitobi begins development of PhoneGap.

November 11, 2008 - A port of QuickConnect made available for Mac desktop and laptop systems.

December 16, 2008 - version 1.0 of QuickConnect for the iPhone released. This included support for embedded Google maps, Geo location, SQLite support both in the browser and with installed databases, an AJAX wrapper, drag-and-drop, phone, email, audio file recording and playing, as well as other features.

January 16, 2009 - version 1.0 beta 1 of QuickConnect for Android released. This release was an eclipse project that could be imported by the user into their workspace.

August 29, 2009 - version 1.5 of QuickConnect for the iPhone released.

November 11, 2009 - version 1.6 beta 6 of the QuickConnect family made available. This included the first support for Palm WebOS. This support was provided by an Xcode template that would build, install, and run the application into the PalmWebOS emulator. An Xcode template for Android 2.0 support was also added. This template would build for both the emulator and the Android app store as well as install and run the application on the Android emulator Templates were now available for the iPhone, Android, and PalmWebOS mobile devices.

See also

References

  1. ^ http://blog.nowvu.com/2010/08/30/a-lightweight-method-to-check-sencha-touch-browser-compatibility-in-php/
  2. ^ Access to pre-release versions, beta previews, and some plug-in modules require a purchased subscription.
  3. ^ http://www.phonegap.com/features
  4. ^ Currently only iOS is supported.