Mobile development framework

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

Current frameworks

FrameworkLicenseFramework targetDevelopment languages Target platformOther device supportWithout recompiling developmentEnterprise data synchronizationMulti-threaded applicationsFile uploadingImage library browsingIn application emailApplication distribution supportDistribution analyticsSelf-contained, no web requiredWeb servicesMobile APIs supportAble to access the web for dataGeolocation supportVibration supportAccelerometer supportSound (play) supportSound (record) supportCamera supportZeroconf (Bonjour) supportXMPP supportFile system IO supportGesture / Multi-touch supportDevice Motion Event (accelerometer) supportDevice orientation event (accelerometer) supportNative date/time picker supportSMS supportTelephone supportMaps supportOrientation change supportContact supportSQLite supportNative language application development supportGraph library support
Apache Cordova
Apache Public License v2Embedded applicationsHTML, JavaScript and CSS iOS, Android, Windows Phone, BlackBerry, Symbian, Palm WebOS, WACWeb, Bada and various desktop OSNoNoNoYesNo?NoNoYes??YesYesYesYes, BlackBerry requires OS 4.7YesYesYes?YesYesYesYesYes?YesYesYesYesYesYes, not possible on BlackBerryNo?
Codename One
GPL+CPEJava iOS, Android, Windows Phone, BlackBerry, SymbianWindows, Linux & macOS??YesYesYesYes??YesYesYesYesYesYesYesYesYesYesYes (external)Yes (external)YesYesYesYesYesYesYesYesYesYesYesYesYes
Crosswalk Project
BSD LicenseWeb and Hybrid applicationsHTML5, JavaScript, and CSS iOS, AndroidTizen, Linux, and Windows 10 desktop,NoNoYesYesYesN/ANoNoYes?Crosswalk WebAPI, Device API, and Embedded APIYesYesYesYesYesYesYes?YesYesYesYesYes?YesYesYesYesYesNoNoYes
Enyo
Apache License v2.0Web applicationsHTML5, CSS3, JavaScript iOS, Android, Windows Phone, BlackBerry, Palm WebOSTablet, desktop and web environments, Tizen, Firefox OSYes, for web apps?YesYesYesYesNoYesYesYesYesYesYesYesYes
iPFaces
CommercialEnterprise applicationsPHP, ASP.NET, Java iOS, AndroidJava ME beta version, general web browser through XSLT?No (On roadmap)????AppStore, Cloud ServicesAppStore, Cloud ServicesYes??YesYesYesNo (On roadmap)Yes?In betaNo?Yes????SendingYesBetaYes?No (On roadmap)No?
iUI
MITWeb applicationsJavaScript, HTML and CSS iOS, Android, Palm WebOSTablets, desktop and web environments?NoNo???NoNoNo??YesNoNoNoYes?????YesYesYes?YesYesYesYes??No?
Kivy
MITEmbedded and enterprise applicationsPython iOS, AndroidLinux, macOS & WindowsNo?Partial (Python-based.)YesYesYesYesNoYes?Yes (In progress)YesNo (On roadmap)NoYesNoNoYesNoNoYesYesYesYesNoNoNoNoYesYesNoYesNo
MoSync
GPL v2 (+ commercial edition)Hybrid, native and enterprise applicationsC/C++, JavaScript, HTML and CSS iOS, Android, Windows Phone, BlackBerry, SymbianJava ME, Moblin, Windows Mobile?No (On roadmap)?YesNo (On roadmap)?No (On roadmap)No (On roadmap)Yes??YesCell ID, GPS, DRMNo (On roadmap)No (On roadmap)YesNo (On roadmap)YesNoNoYesYes?YesYesYesYesYesNoNo Uses onboard storage and back-end databases via service layerYesYes
NEXT
Apache License v2.0Web applicationsGWT, HTML5, CSS3, JavaScript, Java iOS, Android, BlackBerry, Palm WebOSBada, BlackBerry PlayBook, MeeGo?Yes, Offline SupportYes (JSONP, JSON, GWT RPC)No (On roadmap)YesYesYesNo (On roadmap)YesNoNoYes, via CordovaYesYesYesYesYesYesYesYesNo (On roadmap)YesNoNo
NSB/AppStudioCommercialWeb applicationsBASIC, JavaScript, HTML and CSS iOS, Android, Windows Phone, BlackBerry, Symbian, Palm WebOSTablets, desktop and web environments?NoYesYes, via CordovaYes, via CordovaYesNoNoYesYesYes (Sencha Touch, JQTouch, etc.)YesYesYes, via CordovaYesYesYes, via CordovaYes, via Cordova?Yes, via CordovaYes, via CordovaYesYesYesYesYesYesYesYesYes, via CordovaYesNoYes, via HTML5 SVG or Canvas
Pega AMP
CommercialHybrid, native and enterprise applications[1]HTML5, CSS3, JavaScript, Java, Native code or a combination of both iOS, Android, Windows Phone, BlackBerryTabletsNoYesYesNoNoNoYesYesYes, Offline SupportYesYesYesYesYes, via CordovaYes, via CordovaYes, via Cordova or HTML5 AudioYes, via CordovaYes, via CordovaYes, via CordovaYes, via CordovaYesYes, via CordovaYes, via Cordova??YesYesYesYes, via CordovaYes, based on device supportYesCompatible with other libraries
RhoMobile Suite
MITEmbedded applicationsHTML, JavaScript, Ruby iOS, Windows Phone, BlackBerry, SymbianTablets and Windows (Win32)?Yes, via RhoConnectYes, via RubyYesYes?Yes, via RhoGalleryNoYesYes (REST or SOAP with JSON or XML)?YesYesYesYesYes?Yes??Yes??YesYesYesYesYesYesYesYesYes, via Rhodes extensionsYes, via HTML5 SVG or Canvas
Sencha Touch
GPL v3 (+commercial edition)Web applicationsHTML5, CSS3, JavaScript iOS, Android, Windows Phone, BlackBerryWebkit desktop browsers (Chrome, Safari)?Yes, Offline SupportYes (JSONP, JSON)YesYes via CordovaYes, via CordovaYesYesYesNoNoNo (On roadmap)YesThrough CordovaYes

History

With mobile device manufacturers 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, Geolocation, 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.

There are several rules on how to choose the right mobile app framework.[2]

See also

References

  1. "Pega Mobility Whitepaper" (PDF). Pega Mobility.
  2. "Choosing the Right Technology Stack for Mobile Application". Cleveroad.
 2. Top Mobile App Development Languages
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.