Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Top 10 Cross Platform Mobile App Development Tools

DZone's Guide to

Top 10 Cross Platform Mobile App Development Tools

These cross platform mobile app development tools, like PhoneGap and Xamarin, can help you build engaging hybrid apps for both Android and iOS.

· Mobile Zone
Free Resource

Download this comprehensive Mobile Testing Reference Guide to help prioritize which mobile devices and OSs to test against, brought to you in partnership with Sauce Labs.

Considering coding your idea to success? Well, everyone wants it, but few only truly succeed. While there could be a sea of factors that hold the key to success of an app strategy, a significant one that rarely gets the attention of entrepreneurs today is the type of app development tool to use. The diversity and quality of its plugin libraries and APIs, and other compatibility and integration aspects, play a big role in that.

With platform and device diversity ruling the mobile landscape, cross-platform app development has emerged as a commercially viable option. Contrary to native app development, a single code composition created with a cross-platform development tool can be used to target multiple platforms or devices. Hence, it helps you not just containing the cost of technology investment, but also the hassles involved with updating and managing the portfolio of apps in your business.

1. PhoneGap (Apache Cordova)

Engineered by the team behind Apache Cordova, this open source tool is comprised of a compiler, debugger, and testing tools woven with popular web technologies (HTML5, CSS3, and JavaScript). The myths that PhoneGap is suitable for building only simple apps, and that PhoneGap apps make little use of device's capabilities, have been debunked in the recent past with the inclusion of a wide range of plugins like Image Capture plugin, Media Recorder Plugin, Push plugin, and much more. For instance, the CP Jobsite app, a PhoneGap-based app, enables supervisors of painting services provider to stay connected with their dispersed workforces. Users at the other end can capture the progress of the work via the device's camera, and send it over to their supervisors. Instant messaging allows them to share updates frequently.

Pros

  • Web technologies (HTML5, CSS3, and JavaScript) are at the core of PhoneGap. Hence, developers can make use of their existing skills.
  • Code reusability across iOS, Android, Windows Phone, BlackBerry, Firefox OS enables developers and businesses to reduce the TTM (Time-to-Market).
  • It possesses a plugin-able architecture that helps developers create featured apps with the utilization of device’s capabilities through APIs.
  • It supports in-app purchases across the App Store for iOS, the Google Play Store for Android, and more.

Cons

Performance issues might occur with graphic-intensive apps. By implementing third-party solutions to enhance caching and graphic acceleration, developers can overcome this challenge. However, with OEMs coming up with better technical specifications, you should worry a little on this front.

2. Appcelerator

Cross-platform developers can use this tool to build, test, connect, and eventually measure the functionality of the built app. It favors JavaScript programming. The universal code concept applies here. Developers can implement one code base across multiple platforms from Android and iOS to Windows Phone and BlackBerry to speed up product development and delivery.

Pros

  • It’s suitable for rapid application development. Developers can build a prototype of the app in a quick and easy way to evaluate the user interaction with the UI.
  • It possesses a schema-less data store called ArrowDB that lets you deploy data models with zero setup efforts.
  • It facilitates seamless integration to existing continuous delivery systems like SCM and MDM solutions.
  • It’s equipped with pre-built connectors available for MS Azure, MS SQL, Salesforce, MongoDB, Box, and various others

Cons

Appcelerator is known to be a bit buggy and laggy, though the newer version is more stable. There are also user complaints about poor support from its developer community

3. Xamarin

In Xamarin, a C# codebase can be universally applied to multiple platforms. However, unlike other frameworks, it lets developers work with native IDEs, languages, and APIs. Moreover, Git integration is built directly into the Xamarin Studio.

Pros

  • Xamarin comes up with some sample apps to help you get started in a quick and easy manner.
  • Almost three-fourths of the code can be shared across major mobile platforms. Hence, using Xamarin, you can curtail not just the development cost but also the TTM (time-to-market).
  • Xamarin supports functionality testing and quality monitoring across a wide range of devices. It does have its Android emulator.

Cons

Prevailing compatibility issues with open-source libraries for Android and iOS are a bit of a deterrent towards building a full-fledged app. This is something that its community must address to encourage the development of a substantial project with Xamarin.

4. Sencha Ext JS

If you have been looking to create data-intensive cross-platform apps or apps that can leverage hardware acceleration techniques, this is the ideal framework to go for. It houses a robust data package (to support interaction with an array of back-end data sources) and 115+ high-performance, pre-tested, and integrated UI components, including calendar, grids, charts, and more. The framework unleashes the potential of HTML5 on modern browsers.

Introducing Sencha Pivot Grid and D3 adapter, Sencha Ext JS enables developers to build apps with great business intelligence (BI) for data visualization and analytics. Ext JS Grid and Advanced Charting package analyze and interpret millions of records with ease.

Pros

  • It features built-in native-looking themes for every major platform.
  • It supports Android, iOS, BlackBerry, Windows Phone, and more.
  • Its backend data package works independently with different data sources.
  • It supports PhoneGap/Cordova integration for native API access and packaging.

Cons

  • Few choices regarding choosing the themes for the target platforms.
  • Licensing complexity with the commercial version.

5. MonoCross

MonoCross supports the development of cross-platform apps with C#, Microsoft .NET and the Mono framework. Developers can retain the coding of application, controller, and model across different platforms while playing with the platform container and the view, that is, user-interface, to deliver a native experience across all key platforms. Also, it makes app porting easier than ever. Thus, businesses can cope with the rapid changes in platforms.

Pros

  • Supporting a diverse range of APIs, MonoCross makes it easier to utilize the complete capability of the device.
  • Support for third-party APIs also reduces the development time as developers don't have to struggle with the low-level intricacies of every platform.
  • Using MonoCross to develop apps requires only C# and .NET compatibility.

Cons

Cross-platform developers, particularly beginners, struggle with its usability and features as little documentation and support resources are available online.

6. Adobe Build

This cloud-based tool works along with Cordova or PhoneGap and does the code compilation, thereby helping developers to pursue their goals and expedite delivery as well as the quality of deliverables. Instead of getting acquainted with multiple native software development kits like Android SDK, iOS SDK, Windows Phone SDK, or something similar, developers can work on any cross-platform app development project - all that is required is the knowledge of web technologies or languages like CSS3, HTML5, and Java.

Pros

  • Code reusability helps developers to cope with the tighter deadlines.
  • Access to native APIs (such as camera, geolocation, and contacts) is made simpler with a few lines of JavaScript.
  • Good for businesses and enterprises with their strict TTM (time-to-market) and growing competition.
  • It helps with managing a portfolio of apps with quick updates and maintenance.

Cons

  • Data processing speed with JavaScript is not as efficient as it is with a native language, like Swift.
  • Slow background processing as APIs with JavaScript is not multi-threaded.
  • Poor access to native functionality. Many of the native APIs lack support for PhoneGap's APIs.

7. Kony AppPlatform

A low-code app development framework, Kony AppPlatform is the favorite choice of enterprises who want to cope with their growing demand for mobile applications. Developers with skills in JavaScript can make use of this platform to create native as well as cross-platform apps. Its greatest benefit is that developers can drag-and-drop features they need from the Kony Marketplace or their API libraries. Developers can review the app and cross-check its API connectivity. Thus, the framework accelerates the development process.

Pros

  • Kony is loaded with sample or pre-built apps to educate developers.
  • It supports a wide range of backend systems.
  • It has a strong visualizer to validate its powerful multi-channel JavaScript APIs.

Cons

The documentation and support available for Kony on the web are not sufficient, as with Monocross, when compared to that of various other platforms, which has restricted its adoption by beginners.

8. Convertigo

Convertigo pitches itself as a mobile backend as a service (MBaaS) platform and offers products like Convertigo Studio, Convertigo Server, Convertigo Cloud and Convertigo Mobilizer that ease app development for enterprises.

Pros

  • Convertigo features Fullsync data replication technology that helps with building apps with offline mode.
  • It favors connectivity with dispersed enterprise data with connectors such as SQL databases or web services.
  • It supports Cordova plugins and can make use of device’s features like GPS, camera, sensors, etc.
  • Its push notifications work in standby mode.

Cons

Convertigo has three different plans, of which the free plan just has community support and doesn't include its Fullsync offline data support.

9. NativeScript

This open-source platform favors building cross-platform apps with a native UI for Android and iOS using Angular, TypeScript, or JavaScript. Developers can access native APIs via JavaScript and reuse of packages from NPM, CocoaPods, and Gradle, thus creating a feature-rich app or enhancing the existing features becomes easier.

Pros

  • It extends support to Angular.js 2 and TypeScript.
  • It lets you use almost any JavaScript library that does not rely on the Internet.
  • Apps make use of native components and have direct access to the native APIs, along with full access to the development libraries.
  • It possesses a cross-platform Declarative UI support, allowing you to make the app’s UI once and implement it across different platforms.

Cons

Multi-threading is a possible issue in NativeScript, which may be improved in later releases. There is a lack of in-depth examples and documentation on each of its features.

10. RhoMobile Suite

Powered by Rhodes open source framework, RhoMobile Suite is a set of development tools required to build data-centric, cross-platform enterprise apps with a native user experience. Its anatomy is quite similar to PhoneGap. Its existing web technologies like CSS3, HTML5, JavaScript are joined by Ruby. Apps based on RhoMobile Suite can be made compatible with mobile as well as non-mobile operating systems like iOS, Android, Windows Phone, Windows Mobile, Windows CE, Windows 10 Mobile, and Windows Desktop.

Pros

  • Its automatic data encryption helps enterprises worried about BYOD to secure their enterprise data.
  • Its Object Relational Mapper enables automatic synchronization of backend data.
  • It supports offline data accessibility and synchronization into apps.

Cons

It restricts Radio-frequency identification (RFID) plug-ins to Windows Mobile/CE. Had it been made open source, it could have reached farther regarding popularity.

Conclusion

The numbering doesn't reflect the superiority or inferiority of a particular framework. Every tool has its strengths and limitations and selection of a framework should be done as per the requirements of a project. A cross-platform app development company entrusted with any project must strike a balance between what is available and what is required, and go in the right direction.

Analysts agree that a mix of emulators/simulators and real devices are necessary to optimize your mobile app testing - learn more in this white paper, brought to you in partnership with Sauce Labs.

Topics:
hybrid app development ,mobile ,mobile app development ,android ios ,cross platform

Published at DZone with permission of Saroj Kumar, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}