现在Qt不要光看跨平台了,Qt也有能力和原生应用进行较量的。
可以直接去Qt官网查看他和那些厂商合作。关于和Java的比较,框架和Java进行比较似乎不且实际。
如果是C++和Java比较,网上有很多文章,可自行翻阅,不要在知乎上看C++和Java比较,黑了C++,捧了Python和PHP。Java呢?晾一边了。
在安卓上的话,现在问题可能很多,但是随着Qt的更新,大体解决得七七八八了。Qt on Android 对于原有Qt开发人员和爱好者是一个不错的选择,虽然在Qt可以完成大部分安卓的对应功能,可以做到不敲Java代码,但是Qt官方的意图是让程序猿少敲Java代码,所以提供了Android Extra模块。(对于安卓3.0以下可能不完善,但是例如各种传感器,摄像头,本地化等等支持很完善了,WebView的问题貌似在Qt5.5解决了,如果不行就Java和C++混编,混编难度大?一个人确实是难了点,但是对团队来说,这种事情很好解决的)。
然后,Qt说到底,还是跨平台的界面库,所以对于主流系统的支持会日渐完善的。
另外由于C++本身特性,适合和脚本语言结合,完成静态语言和动态语言的长短相补。所以我安利一下QML~

作者:qyvlik
链接:http://www.zhihu.com/question/32282261/answer/57381061
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

 
除了尺寸有点大,不如原生SDK血统纯正,
没别的大缺点
网易战网客户端就是Qt quick写的
--------------------------------------------------------------------------------------------------
具体大坑:
 
http://www.zhihu.com/question/37331229
 
--------------------------------------------------------------------------------------------------

不看好Qt for Android。以下简称QfA.

1. 跨平台只在PC上有优势,在移动设备上毫无优势。移动设备整体的应用风格需要保持一致,你外部加进来一个UI,倒是和平台保持一致了。你如何保持和原生UI的这种使用一致性。

2.在开发易用度上,Android(java) API 已经做得很好,包括事件,广播,服务等Qt里有的基本上Android API里已经做得很好,从Qt开发者转为java开发者也很容易。 而如果要写QfA应用,开发者不仅要懂Qt,同样也避免不了要写java代码。

3. 如果要写和其它app通信的时候,QfA的灾难性就来了。如果是上层的几乎等完整的搞一遍Android API吧。 另外对于和设备相关的一些调用(GPS/Telephony)等,QfA的工作量一下子就上来了,这时候你还指望QML么?

4.性能呢? QfA对于图形渲染区的请求还得在java的接口请求,是不是又要绕了个大弯。

5. 软件体积。 终端用户要用Qt app,势必要先装一个Qt lib, 或者在你的app 中一起静态发布。
在有很多优秀的QfA app出现之前,大家不带乐意只为一个好的app 去装一个大的软件,而会愿意选择一个原生软件替代。

6.官方支持。目前Qt开发团队多少人?但目前他们要支持多少平台。 Linux/Windows/Mac/Vxworks/QNX/Android。 如果没有一个比较大的商业级别软件在用QfA,官方能做的就是让这个软件在Android平台能编译,运行,解决一些明显的bug。

7. Qt做mobile最好的机会就是被大款看上。她也曾经被看上过(Nokia 和 Intel)。 但是被Elop害死了。 我恨他!!!!!!!!!!!!!!!!!!!!! !

Qt是一款优秀的开发套件,我爱她。

 
作者:朱加平
链接:http://www.zhihu.com/question/19689965/answer/22507712
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
 
-------------------------------------------
 
Android图形系统确实已经很好了,但是某些就此而下结论说Qt for Android的没有前途或者未有必要未免太过武断。
Qt for Android还是有他的优势:
1. Qt主打的优势是跨平台,Qt5.2已经可以较完整的支持Android和IOS,目前从跨平台这方面来讲Qt是最好的没有之一。
2. 经过近20年的锤炼,Qt已经积累丰富实用的,网络,2D图形,3D图形及UI库等,这些如果能在Android上得以重用自然是好事
3. Java在很多复杂运算上面的效率是不如C++的,虽然有NDK,但是使用起来还是略显麻烦,Qt for Android在这方面就容易的多了
4. 对于一些C++的死忠,而又需要开发Android的应用,但是又不想学习Java Android开发的人Qt提供了一个快速上手的好选择
5. QML+JS可以方便快速的开发出高端大气上档次的UI,同时效率又比HTML5高出将近5倍(网上有测评)

因此,有没有前途跟用什么技术没有太大关系,重要的是你用它来做什么应用。

作者:Leo Lei
链接:http://www.zhihu.com/question/19689965/answer/22313952
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

对Qt for Android的评价(很全面,基本已经没有问题了),可以重用QT积累20年的RTL是好事,QML效率是HTML5的5倍的更多相关文章

  1. 对Qt for Android的评价(很全面,基本已经没有问题了,网易战网客户端就是Qt quick写的),可以重用QT积累20年的RTL是好事,QML效率是HTML5的5倍

    现在Qt不要光看跨平台了,Qt也有能力和原生应用进行较量的.可以直接去Qt官网查看他和那些厂商合作.关于和Java的比较,框架和Java进行比较似乎不且实际.如果是C++和Java比较,网上有很多文章 ...

  2. Qt on Android 核心编程

    Qt on Android 核心编程(最好看的Qt编程书!CSDN博主foruok倾力奉献!) 安晓辉 著   ISBN 978-7-121-24457-5 2015年1月出版 定价:65.00元 4 ...

  3. Qt for Android开发环境搭建及测试过程记录

    最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...

  4. Qt on Android:让 Qt Widgets 和 Qt Quick 应用全屏显示

    Android 系统版本号非常多,较新的 4.4 ,较老的 2.3 ,都有人用. Qt on Android 开发的 Android 应用.默认在 Android 设备上是非全屏的. 而有些应用的需求 ...

  5. qt on android之GPS信号的获取

    0.      写在最前面 本人參考安晓辉大侠的一篇博文后.做了Qt on android的GSP相关的实验.为了后面不时之需.故而记录下来. 1.      Qt on Android GPS系统流 ...

  6. Qt for Android开发Android应用时的各种错误汇总(此片博文不成熟,请大家略过)

    “Qt for Android真的很脆弱,项目能跑起来靠的是奇迹,跑不起来,各种报错才是正常...” 问题一:Qt for Android编译不过:make (e=2): 系统找不到指定的文件. 之前 ...

  7. Qt on Android: Android SDK安装

    之前我在 <Windows下Qt 5.2 for Android开发入门>一文中介绍了 Windows 下 Qt on Android 开发环境的搭建,略过了 Android SDK 的安 ...

  8. Qt on Android 资源文件系统qrc与assets

    使用 Qt 为 Android 开发应用时,有时我们的应用会携带一些资源文件,如 png . jpg 等,也可能有一些配置文件,如 xml 等,这些文件放在哪里呢?有两种方式:qrc和assets,咱 ...

  9. 加快QT工程编译速度(还可给Qt for Android设置)

    一.多核编译 环境:win10, Qt 5.4.1,编译器mingw32 项目: Qt for Android Qt Creator 在编译android项目时不支持预编译,默认cpu单核编译,工程稍 ...

随机推荐

  1. RStudio 的使用

    0. 基本 路径查看和设置: getwd() ⇒ 查看路径 setwd() ⇒ 设置路径: 1. 快捷键 ctrl+shift+c:多行注释:选中待注释的代码段,按下 ctrl+shift+c(c 表 ...

  2. C# 控制台使用 UAC 权限

    原文:C# 控制台使用 UAC 权限 本文告诉大家如何在 C# 控制台项目使用 UAC 权限.这个方法在 WPF 和 控制台都是可以使用. 右击项目,点击添加文件,找到程序清单 在 WPF 使用 UA ...

  3. 微信公众平台开发(1) 通用的工具类CommonUtil

    1.通用的调用微信的方法 /** * * @param requestUrl 接口地址 * @param requestMethod 请求方法:POST.GET... * @param output ...

  4. Android 平台下Ftp 使用模拟器需要注意的问题

    以下代码在pc上测试通过,可是在android模拟器上就不工作,不过还可以链接到服务器但不能得到文件 纠结了半天,原来是模式的问题,具体请Google 模拟器中采用建议被动模式 public void ...

  5. NFS Server搭建实践

    NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操作系统能够彼此分享个 ...

  6. C#将string转换为十六进制

    /// <summary>         /// 将string格公式为十六进制数据         /// </summary>         /// <param ...

  7. VSCode 小鸡汤 第01期 - REST Client 简单好用的接口测试辅助工具

    介绍 今天给大家介绍一个后端开发辅助的好工具 -- REST Client,插件如其名这就是一个 REST 的客户端插件,把我们的 VSCode 转化为一个 REST 接口测试的利器 我们一般都会用 ...

  8. uwp - 解决“Microsoft.EntityFrameworkCore.Tools –Pre因为在此系统上禁止运行脚本”

    在uwp使用ef时,需要安装“Microsoft.EntityFrameworkCore.Tools –Pre” ,如果安装失败提示:“无法加载文件 \.nuget\packages\Microsof ...

  9. python 教程 第十章、 输入/输出

    第十章. 输入/输出 1)    文件 poem = '''Programming is fun use Python!''' f = file('poem.txt', 'w') # open for ...

  10. DTFT、DFT、FFT

    对于一般的周期信号可以用一系列(有限个或者无穷多了)正弦波的叠加来表示.这些正弦波的频率都是某一个特定频率的倍数如5hz.2*5hz.3*5hz--(其中的 5hz 叫基频).这是傅立叶级数的思想.所 ...