使用QT C++编写跨平台手机应用程序的现实

use*_*747 16 c++ iphone qt android cross-platform

我正在尝试继续开发智能手机的应用程序(我对Android有一点经验).我做了一些深入的研究,我决定开始在Qt C++中创建应用程序.

我这样做的原因是因为根据我的研究,我似乎可以在Qt编写一个应用程序,然后我要做的就是在iPhone,Android,Symbian和Windows Mobile上编译它然后我将有一个可以工作的应用程序在所有这些平台上.

我的问题是:我是否正确如果我在Qt C++中编写应用程序,那么它将适用于以下平台:Android,iPhone,Symbian和Windows Mobile?

我知道这是一个天真的问题("我可以使用什么API在所有平台上工作")但我已经研究了很多,他们似乎都说Qt可以在所有这些平台上运行.

PS,使用Qt编写跨平台手机应用程序是否有任何缺点?编译Qt应用程序代码难以在每个平台上进行吗?

Kon*_*nis 11

很久以前就提出过这个问题,很多事情都发生了变化.对于那些今天(2014年初)问自己同样问题的人,那么我的个人答案是Qt在iPhone上工作率为99%.

目前我正在开发一个使用QSensors,QNetworkAccessManager和OpenGL ES的应用程序,我在OSX,iOS,Windows和Linux上没有遇到任何问题.考虑很快移植到Android.

我遇到的唯一问题是iOS尚不支持的QtPositioning(GPS)模块,但解决方法非常简单,我不认为这是一个问题.它可能会在今年晚些时候发挥作用.此外由于一些iOS限制,QtWebKit不可用.其余的工作就像一个魅力!干得好.

我没有在Android上测试自己,但从我读到的Qt也应该对此进行测试.


Raj*_*rma 8

您最好使用Qt C++(最近使用QML)进行手机开发.

我的问题是:我是否正确如果我在QT C++中编写应用程序,那么它将适用于以下平台:Android,iPhone,Symbian和Windows Mobile?

是的,它适用于Android,Symbian,Windows Mobile,Meego,Maemo,Moblin.

我是Qt开发人员,我用它来开发Symbian,Meego,Maemo和Android.自Symbian,Meego,Maemo获得官方支持以来,他们在这些平台上完美地工作了99.99%.

但是在Android中,它可以很好地工作95%,但你只需要很少的锻炼.据我所知,Android上不支持QtMultimedia套件(有些路径可用).但Android端口贡献者Bog表示他们将尽快移植它.Qt以及Android的Qt背后有一个很大的社区.您也可以在Symbian和Meego中使用Mobility API.Qt移动应用程序已经在Android市场上发布,没有任何问题.

关于Windows Mobile,它正式提到即使Qt Mobility也可以与该手机一起使用,它支持纯Qt C++代码.但我不认为现在有太多用户会使用Windows Mobile,因为Windows Phone 7(Qt不支持)是最新的话题.

关于iPhone端口,是的,社区有实验端口.我想,很快就会有一些例子.我看过一些Youtube视频,展示了在iPhone上运行的Qt和Qt Mobility.

最近RIM表示,他们的烧烤(黑莓平板电脑操作系统)平台将拥有Qt的官方端口.

关于任何Linux Mobile(Moblin,Maemo等),是的Qt C++完全适用于它们.

关于桌面,Qt C++/QML几乎在所有桌面平台上运行.

我不明白,像CommonsWare这样的人有145k代表,刚出来说字面意思就像Qt不会在任何移动平台上工作.但正如他所说,如果您要选择像PhoneGap这样的基于HTML的API,那么我会推荐Qt 100次.因为Qt在所有方面都可以比HTML5做得更好.它可以比HTML5更好,更有效地处理3D,OpenGL等一些comlpex问题.

在阅读了上述所有答案之后,我很失望地说你最好不要相信这些答案,然后加入这个地方Qt Labs你会看到并享受Qt的真正力量.

最近Qt已经开放治理,每个Qt模块将根据公众利益进行开发和维护.此外,奇趣科技,KDE和诺基亚正在出于商业原因进行开发.所以永远不要因为一些不好的建议而失去Qt,自己尝试然后自己决定.


Seb*_*sza 5

对iOS和Android的支持是实验性的,不幸的是.诺基亚仅支持较新版本的Symbian.所以Qt只是桌面上的跨平台,这里真的很棒----> Linux,Windows,**BSD,MacOSX,OS/2,Amiga OS4 ....

令人遗憾的是诺基亚开始制造Windows手机.如果他们坚持使用meemo和symbian,至少Qt会被积极开发.


Jer*_*fin 1

我不相信 Qt 能达到你所描述的目的。不幸的是,我认为其他事情也不会。Android基本上只支持Java。NDK 允许您用 C++ 编写应用程序的一部分,但仍然需要 Java。

新版本的 Windows Mobile 仅支持 .NET 应用程序(而且我有理由确定其他手机根本不支持 .NET 应用程序......)

  • 有_Qt 移植到 iO 和 Android。不过,它们是非官方的和实验性的,并且通过这些应用程序商店附带的应用程序尚未可见。 (2认同)