Mobile development framework

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

A mobile development framework is a software framework that is designed to support mobile app development.

Current frameworks[edit]

Framework License Framework target Development languages Target platform Other device support Without recompiling development Enterprise data synchronization Multi-threaded applications File uploading Image library browsing In application email Application distribution support Distribution analytics Self-contained, no web required Web services Mobile APIs support Able to access the web for data Geolocation support Vibration support Accelerometer support Sound (play) support Sound (record) support Camera support Zeroconf (Bonjour) support XMPP support File system IO support Gesture / Multi-touch support Device Motion Event (accelerometer) support Device orientation event (accelerometer) support Native date/time picker support SMS support Telephone support Maps support Orientation change support Contact support SQLite support Native language application development support Graph library support
Apache Cordova
Apache Public License v2 Embedded applications HTML, JavaScript and CSS iOS, Android, Windows Phone, BlackBerry, Symbian, Palm WebOS, WAC Web, Bada and various desktop OS[citation needed] No No No Yes No ? No No Yes ? ? Yes Yes Yes Yes, BlackBerry requires OS 4.7 Yes Yes Yes ? Yes Yes Yes Yes Yes ? Yes Yes Yes Yes Yes Yes, not possible on BlackBerry No ?
Codename One
GPL+CPE Java iOS, Android, Windows Phone, BlackBerry, Symbian Windows, Linux & macOS ? ? Yes Yes Yes Yes ? ? Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes (external) Yes (external) Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
Crosswalk Project
BSD License Web and Hybrid applications HTML5, JavaScript, and CSS iOS, Android Tizen, Linux, and Windows 10 desktop, No No Yes Yes Yes N/A No No Yes ? Crosswalk WebAPI, Device API, and Embedded API Yes Yes Yes Yes Yes Yes Yes ? Yes Yes Yes Yes Yes ? Yes Yes Yes Yes Yes No No Yes
Enyo
Apache License v2.0 Web applications HTML5, CSS3, JavaScript iOS, Android, Windows Phone, BlackBerry, Palm WebOS Tablet, desktop and web environments, Tizen, Firefox OS Yes, for web apps ? Yes Yes Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes
iPFaces
Commercial Enterprise applications PHP, ASP.NET, Java iOS, Android Java ME beta version, general web browser through XSLT ? No (On roadmap) ? ? ? ? AppStore, Cloud Services AppStore, Cloud Services Yes ? ? Yes Yes Yes No (On roadmap) Yes ? In beta No ? Yes ? ? ? ? Sending Yes Beta Yes ? No (On roadmap) No ?
iUI
MIT Web applications JavaScript, HTML and CSS iOS, Android, Palm WebOS Tablets, desktop and web environments ? No No ? ? ? No No No ? ? Yes No No No Yes ? ? ? ? ? Yes Yes Yes ? Yes Yes Yes Yes ? ? No ?
Kivy
MIT Embedded and enterprise applications Python iOS, Android Linux, macOS & Windows No ? Partial (Python-based.) Yes Yes Yes Yes No Yes ? Yes (In progress) Yes No (On roadmap) No Yes No No Yes No No Yes Yes Yes Yes No No No No Yes Yes No Yes No
MoSync
GPL v2 (+ commercial edition) Hybrid, native and enterprise applications C/C++, JavaScript, HTML and CSS iOS, Android, Windows Phone, BlackBerry, Symbian Java ME, Moblin, Windows Mobile ? No (On roadmap) ? Yes No (On roadmap) ? No (On roadmap) No (On roadmap) Yes ? ? Yes Cell ID, GPS, DRM No (On roadmap) No (On roadmap) Yes No (On roadmap) Yes No No Yes Yes ? Yes Yes Yes Yes Yes No No Uses onboard storage and back-end databases via service layer Yes Yes
NEXT
Apache License v2.0 Web applications GWT, HTML5, CSS3, JavaScript, Java iOS, Android, BlackBerry, Palm WebOS Bada, BlackBerry PlayBook, MeeGo ? Yes, Offline Support Yes (JSONP, JSON, GWT RPC) No (On roadmap) Yes Yes Yes No (On roadmap) Yes No No Yes, via Cordova Yes Yes Yes Yes Yes Yes Yes Yes No (On roadmap) Yes No No
NSB/AppStudio Commercial Web applications BASIC, JavaScript, HTML and CSS iOS, Android, Windows Phone, BlackBerry, Symbian, Palm WebOS Tablets, desktop and web environments ? No Yes Yes, via Cordova Yes, via Cordova Yes No No Yes Yes Yes (Sencha Touch, JQTouch, etc.) Yes Yes Yes, via Cordova Yes Yes Yes, via Cordova Yes, via Cordova ? Yes, via Cordova Yes, via Cordova Yes Yes Yes Yes Yes Yes Yes Yes Yes, via Cordova Yes No Yes, via HTML5 SVG or Canvas
Pega AMP
Commercial Hybrid, native and enterprise applications[1] HTML5, CSS3, JavaScript, Java, Native code or a combination of both iOS, Android, Windows Phone, BlackBerry Tablets No Yes Yes No No No Yes Yes Yes, Offline Support Yes Yes Yes Yes Yes, via Cordova Yes, via Cordova Yes, via Cordova or HTML5 Audio Yes, via Cordova Yes, via Cordova Yes, via Cordova Yes, via Cordova Yes Yes, via Cordova Yes, via Cordova ? ? Yes Yes Yes Yes, via Cordova Yes, based on device support Yes Compatible with other libraries
RhoMobile Suite
MIT Embedded applications HTML, JavaScript, Ruby iOS, Windows Phone, BlackBerry, Symbian Tablets and Windows (Win32) ? Yes, via RhoConnect Yes, via Ruby Yes Yes ? Yes, via RhoGallery No Yes Yes (REST or SOAP with JSON or XML) ? Yes Yes Yes Yes Yes ? Yes ? ? Yes ? ? Yes Yes Yes Yes Yes Yes Yes Yes Yes, via Rhodes extensions Yes, via HTML5 SVG or Canvas
Sencha Touch
GPL v3 (+commercial edition) Web applications HTML5, CSS3, JavaScript iOS, Android, Windows Phone, BlackBerry Webkit desktop browsers (Chrome, Safari) ? Yes, Offline Support Yes (JSONP, JSON) Yes Yes via Cordova Yes, via Cordova Yes Yes Yes No No No (On roadmap) Yes Through Cordova Yes

History[edit]

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 SDK 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 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 Palm webOS mobile devices.

See also[edit]

References[edit]

 2. Top Mobile App Development Languages