Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cross-Platform Mobile Development [closed]

There are a great deal of cross-platform mobile development frameworks around. The major platforms, all mutually incompatible, are:

  • iOS (iPhone, iPad & iPod Touch)
  • Android
  • Blackberry
  • Windows Mobile
  • Windows Phone 7
  • Symbian
  • MeeGo (merger of Maemo and Moblin)
  • webOS

There also exist many different mobile development frameworks that support various arrays of smartphone platforms, including but not limited to:

  • Rhodes
  • ELIPS
  • RAMP
  • Titanium
  • PhoneGap
  • MoSync
  • airplay
  • Bedrock
  • Qt

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.

like image 959
Jake Petroules Avatar asked Nov 08 '10 20:11

Jake Petroules


People also ask

Can you build cross-platform mobile apps?

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.

What is a cross-platform mobile developer?

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.

Is cross-platform app development the future?

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.


1 Answers

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.

like image 110
rubenvb Avatar answered Oct 15 '22 22:10

rubenvb