A guide to the 10 best cross platform mobile development tools
It’s the mind-wrenching question that never really gets answered … should I develop for iOS or Android?
With all of the articles that have been published on the topic, you’d think the app world would have come to some sort of conclusion by now on iOS and Android development.
But they haven’t. And it’s because there is no easy answer to the question — both platforms are great, for equal and different reasons.
(For more on the pros and cons of iOS and Android development, check out our previous article on the differences between the two platforms.)
For consumer apps, it’s best to choose one platform first and build an amazing native experience for it. There are hundreds of millions of users on each platform, and they have come to expect a fluid experience with their apps.
Cross platform apps have limitations in terms of what they can deliver. However, in a few scenarios, the advantages of cross platform apps might make them a compelling proposition.
If that’s the case for you, we’ve put together a list of the 10 best cross platform mobile development tools currently available.
As you’ll see, different cross platform mobile development tools have different specialties: some focus on gaming, some are focused on data security for business purposes, and others specialize in letting you use whatever programming language you like, so you (or your developer team) don’t have to learn new ones.
Ultimately, which of these cross platform mobile development tools you choose depends on your needs and goals for your app-based business.
Tool #1: Sencha
Their main product for app developers, though they have many, is Ext Js 5. Developers choose it because it works across a handful of devices on different platforms and boosts productivity with pre-built components that save teams lots of time when writing code. (So it’s not exactly a translation tool, but it is a huge time saver.)
Once you have your HTML5 code developed, you can translate it to both the iOS and Android platforms using a translation tool like PhoneGap (see below).
Tool #2: PhoneGap
They maintain SDKs (software development kits) on their end for each of the platforms you can develop an app for, so it’s one less thing you have to worry about. And once your app is completed, you can share it with your team members for review to see if you need to make any improvements.
Tool #3: Appcelerator Titanium
And because this is an open-source tool, hundreds of thousands of your fellow developers are constantly contributing to it to make it better and give it more functionality. And if you happen to find a bug in its system, you can too.
Tool #4: Cocos2d
Cocos2d is primarily used in two-dimensional game development. It gives developers the option of five different forks or platforms to develop on, based on their preferred programming language:
- Cocos2d-x uses C++
- Cocos2dXNA uses C#
- Cocos2d-Swift uses Xcode and Objective-C
- Cocos2d(Python) uses Python
Tool #5: Unity 3D
Also focused on creating great games, Unity 3D is a game engine you can use if you really want to take care of your incredible graphics.
This cross platform mobile development tool goes beyond simple translation. After developing your code in UnityScript, C#, or Boo, you can export your games to 17 different platforms, including iOS, Android, Windows, Web, Playstation, Xbox, Wii and Linux.
Once you’ve got your game on all your chosen platforms, Unity will even help you distribute it to the appropriate stores, get social shares, and track user analytics.
Tool #6: Corona
Corona’s SDK comes with the promise that you can start coding your new app in as little as five minutes after the download. It’s another cross platform mobile development tool that’s optimized for 2D gaming graphics and helps you make games 10 times faster than it would take to code everything from scratch.
Corona’s programming language is Lua, which is written in C, making it a cross platform language. Corona chose Lua because they found it to be really robust with a small footprint for mobile apps.
Tool #7: Qt
Qt is a subscription-based service that lets you code in C++, and then export your app to the different platforms on which you want to develop.
Once the apps are exported, the Qt interface lets you access your apps on their respective platforms and devices, so you can see how well the app is operating and make changes if and where needed.
The best part? You don’t need to own so many different devices for testing.
Tool #8: Xamarin
With a free starter option, Xamarin is a mobile development tool that includes app store delivery, performance testing and monitoring, and the ability to do virtual tests on more than 1,000 devices to make sure everything is working and displaying like it should.
Using Ruby or C# for code, Xamarin has created a robust cross platform mobile development platform that’s been adopted by big names like Microsoft, Foursquare, IBM, and Dow Jones.
Tool #9: Alpha Anywhere
The site offers step-by-step walkthrough video tutorials to help first-time app developers make sure they’re getting everything right, but it does come with a pretty hefty price tag.
Tool #10: 5App
The only downside is they require you to get in touch with them before you get started using their platform, but they promise productivity and ease of use once you do.
… Just Don’t Forget About UI and UX!
Keep in mind that cross platform mobile development isn’t quite as simple as writing the code once, putting it through a tool for translation, and publishing both an iOS and Android app to the respective app stores.
Using a cross platform mobile development tool can reduce the time and cost associated with developing apps on both platforms, but the UI needs to be updated to match each system. For example, adjustments are needed between the two so the menu and control commands match the UX of how Android devices and iOS devices operate inherently differently.
(For more on the challenges of cross platform mobile development, check out our previous article on the subject.)
What about you? Will you develop for iOS or Android first? Or try one of these 10 cross platform mobile development tools?