10 Best Free Mobile Application Development Frameworks That Support Android

2639

imgres copyIf you’re developing Android-based games or complex apps with extensive cloud integration, you’ll probably want to seek out native application development tools. These range from the Java-oriented Android SDK and Android Development Tools (ADT) Eclipse plugin to game-oriented engines like Corona to commercial enterprise platforms like the cloud-oriented Monaca toolsuite.

Most mobile apps, however, are simpler affairs with tight deadlines and budgets and the need to support both Android and iOS. For most app developers, especially those converting web apps to mobile, cross-platform mobile app frameworks are a better choice. And the latest mobile frameworks promise some native-like performance and functionality while still hewing to a basic “write once, run anywhere” development approach.

Requirements

Here I look at the 10 best Android-compatible mobile app frameworks. To meet my requirements, they must support HTML5 or JavaScript, although most support both, as well as CSS. They must also be open source, and offer at least some version of a free app. Almost all the programs listed here are both free and open source, and most support Linux desktops as well as Windows and/or OS X.

The open source requirement excludes some promising packages like Trigger.IO, as well as mainstays such as Microsoft’s Xamarin, based on the former Mono project. There’s also been a lot of interest in Intel XDK, which is not open source but is available in a capable free version.

I have also omitted several other programs that are either too rough around the edges, or too out of date. Let me know, however, if your favorite open source framework deserves mention.

These 10 packages range from those that are truly “write once, run anywhere” programs such as the lightweight jQuery Mobile to others that are more similar to native app products, but which make it fairly easy to port and reuse code between Android and iOS. These days, far-reaching cross platform support is not necessary for most app developers, who increasingly see little reason to support Windows Phone, let alone the fading Blackberry. Most of these packages fall somewhere in between “write once” and native, bridging the gap between a JavaScript API and a wrapper framework, while enabling some native functions such as camera control.

Not surprisingly, the packages are greatly improved compared to our previous roundup of 15 mobile app frameworks back in August 2012, In recent years, mobile frameworks have benefited from the increased use of HTML5, as well as much improved components for improving native app functionality and performance. The latest frameworks also let you apply modern UI styles such as Google’s Material Design.

Only four products survived from our original list: jQuery Mobile, Kendo UI, Sencha Touch, and Titanium. The two most popular options these days are relative newcomers: Ionic and Onsen UI.

Unlike the 2012 list, this one does not include Adobe’s venerable PhoneGap, which includes Apache’s Cordova rendering package. PhoneGap is really more of a wrapper and package deployment framework rather than a full development environment. Yet, many of these programs integrate Cordova/PhoneGap and most support optional integration.

Ionic is based on the AngularJS JavaScript MVVM (model–view–viewmodel) framework, which is supported as an option on many of the other products. Another popular optional component is Bootstrap UI. One program listed here based on both Angular and Bootstrap UI is Mobile Angular UI.

Top 10 Open Source Frameworks

Our top 10 open source mobile app frameworks are listed below in alphabetical order, with links to product pages. Unless otherwise noted, the software is available only in a free, open source version.

Framework 7iDangero.us — Since version 1.0 was released a year ago, Framework has been one of the best choices for developing iOS apps. Now that it offers Android support, it’s also a good option if you want to start with iOS, then build an Android version with an iOS like look and feel. Features include Material Design UI, native scrolling, 1:1 page animation, a custom DOM library, and XHR caching and preloading.

Ionic – Ionic – Based on the Sass CSS extension language, this popular cross-platform framework is fairly easy to use, yet it can also integrate AngularJS for building more advanced apps. Ionic offers a library of mobile-optimized HTML, CSS, and JS CSS components, gestures, and tools, and works with predefined components. A command-line interface provides features like emulators, live reload, and logging, There’s also a Cordova-based app packager.

jQuery Mobile – jQuery Foundation – Based on jQuery, this mature, lightweight framework lacks many of the advanced features of most packages here, but it still has a large, committed user base. While it offers features like semantic markup, progressive enhancement, themable design, PhoneGap/Cordova support, there’s not much here for native-like functionality and performance or advanced UI. On the other hand, its simplicity means that “write once, run anywhere” is often an achievable goal, and it’s a good choice for simple apps that also need to run on Windows Phone and BlackBerry.

Kendo-UI-image courtesyTelerikAM

Kendo UI – Telerik – This jQuery based HTML5/JavaScript framework is available in open source and commercial versions. The enterprise-friendly Kendo UI offers a wide selection of UI widgets and plugins. It’s best known for its numerous prebuilt themes with Material Design styling, as well as a theme builder for custom themes. Other features include Angular and Bootstrap UI integration, as well as performance optimizations.

Mobile Angular UI – Maurizio Casimirri – This open source project combines AngularJS and a modified version of Twitter’s Bootstrap into a mobile UI framework. It is said to retain most of Bootstrap 3’s syntax for easier web-to-mobile portability while adding mobile components missing from Bootstrap, such as switches, overlays, sidebars, scrollable areas, and fixed-positioned navbars. Libraries include fastclick.js and overthrow.js. 

NativeScript– Telerik – As the name suggests, NativeScript focuses on native UX development, but it offers cross-platform code-sharing support across Android and iOS. The software uses existing native UI libraries, with UI is described with JavaScript, XML, or optionally, Angular. It’s not as easy to use as Telerik’s more traditional cross-platform Kendo UI framework, however.

Onsen-PM

Onsen UI – Asial Corp. – Onsen is built on HTML and CSS, and is designed to work with PhoneGap and Cordova, which are not pre-integrated. It can also work with Angular and jQuery. As the name suggests, the program stresses UI development, and offers a wide range of web-based UI components and features, such as two-column views for tablets. (Material Design, however, is still missing.) The well-documented program is pitched at jQuery Mobile users who need ease of use but want more functionality, performance, and UI features. A drag and drop GUI tool is under development at Tokyo-based Asial, which also develops and maintains Monaca.

React Native – Facebook – React Native is an open source spin off of Facebook’s React JavaScript framework, which famously replaced the earlier HTML5 foundation. As the name suggests, this high-end, iOS-focused program is more of a native app package than a cross-platform framework, but with its new Android support, it loosely fits our requirements, as you can essentially write once in JavaScript and port to both platforms. Currently, only OS X desktops are fully supported, although there are experimental Linux and Windows versions for Android development.

Sencha Touch – Sencha – Sencha’s mature, enterprise-focused HTML5/JavaScript framework is available in both open source and commercial versions. Sencha builds upon ExtJS to enable native-like performance. It provides a visual app builder for HTML5, as well as the ability to reuse custom components. A native packager streamlines distribution to stores like Google Play.

Titanium – Appcelerator – Unlike the more web-oriented frameworks, Titanium uses JavaScript to create native code, with claimed benefits in performance. This Node.js-based SDK offers over 5,000 APIs for iOS, Android, Windows, Blackberry, and HTML5. Titanium is known more for its performance and extensive feature set than for ease of use. The software is open source, but the full-featured free version is free only as long as you don’t publish your app, at which point you have to pay at least $39 per month.