There are a great deal of cross-platform mobile development frameworks around. The major platforms, all mutually incompatible, are:
There also exist many different mobile development frameworks that support various arrays of smartphone platforms, including but not limited to:
Qt is a great framework for cross platform desktop application development, and takes care of several mobile platforms - Windows Mobile, Symbian, MeeGo. There are community ports for iOS and Android (and webOS?). Blackberry and WP7 are on their own for now.
MoSync also looks quite good, supporting a great number of platforms, including Java-based ones, from C++. However it's not very well known AFAIK and has its own issues.
So my question is: is there ANY cross-platform mobile development framework actually worth using? Every one I've found has one disadvantage or the other that makes it unsuitable for use.
At least if Qt supported iOS and Android you'd need at most three versions of an app to support all platforms (Qt, Blackberry and WP7). The community ports that are around are not well supported at all though, and are far from complete. Plus, even if they are completed, would Nokia ever support them anyways or would that be seen as a bad business strategy?
Should I just bite the bullet and write native ports for each smartphone platform? Qt + iOS + Android + WP7 + Blackberry + webOS? 5-6 versions of an application is quite a lot to maintain, but the solutions for cross-platform development on smartphones don't look that great right now.
There are several cross‐platform development tools available now. Just about all of them can cover Android, iOS, and Windows app development. Tools such as PhoneGap, Xamarin, and Visual Studio all support cross-platform app dev very well.
Cross-platform mobile development is the creation of software applications that are compatible with multiple mobile operating systems. Originally, the complexity of developing mobile apps was compounded by the difficulty of building out a backend that worked across multiple platforms.
However, cross-platform development is worth considering as it eases the process of mobile app development. The most notable advantage of opting for cross-platform technology is the faster development with minimal cost due to its single codebase use, which every business is craving.
UPDATE By popular request, a link to the Qt 5.2 release's Android support page, as it's now officially integrated and "production-ready".
Well, Qt can support Android, via the freshly integrated internal Lighthouse project and the works of an individual developer, who will probably be busy integrating his code in the Qt codebase:
http://code.google.com/p/android-lighthouse/
http://tamss60.tamoggemon.com/2010/03/18/qt-on-android-the-bogdan-vatra-interview/
http://labs.qt.nokia.com/2010/10/29/lighthouse-is-integrated/
Expect to see Qt 4.8 with Android support through Lighthouse.
iOS has a similar drive behind it, but the projects are only starting:
http://forums.internettablettalk.com/showthread.php?p=865264#post865264
Lighthouse provides a tiny abstraction layer for the gui/core operations of Qt, providing a very easy way of porting the framework.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With