• 5306阅读
  • 8回复

Qt for Mobile QML代码跨平台不容易 [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2012-12-31
现在Qt支持或将要支持三类平台Desktop、Embedded、Mobile,其中对于Mobile平台的支持,目前大家常见到的按先后顺序是:Symbian^3、MeeGo 1.2 Harmattan、BlackBerry 10、Sailfish,将来还要支持Android、iOS、Windows RT(不知道Windows Phone将来是否会支持),对于这些Mobile平台的支持,因为各个Mobile平台系统环境及操作模式的不同,导致各个平台都需要一套与系统适应的QML组件,Symbian^3和MeeGo 1.2 Harmattan还好,这两个平台都是Nokia开发的,系统界面操作方式基本相似,所以Qt Components for Symbian和Qt Components for MeeGo 1.2 Harmattan基本上是一致的,无论是从组件使用方式还是外观都基本相同,但Symbian已经停止开发,N9后续机型不太明了,但BlackBerry10和Sailfish,这两者都是使用Qt作为官方开发框架的,都各自开发了不同的QML组件(Sailfish的不太清楚,从目前放出的视频图片来看,其界面已经与N9十分不同了,所以Sailfish下的QML组件与N9下的QML组件相同或相似的可能性比较小),由此导致了使用Qt/QML开发移动平台应用,除非自己写QML组件,否则各个平台下的QML组件是无法通用的,Qt跨平台,但到了这里,无法使用一套代码了,这又加大了代码维护量,将来Qt for Android和Qt for iOS以及Qt for WinRT势必也会出与各自系统UI相一致的QML组件,于是Qt for Mobile平台下的QML代码移植,无法达到以前Qt for Desktop平台下的那种效果,有得Qter们忙了。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线xzoscar
只看该作者 1楼 发表于: 2012-12-31
好悲剧的Qt,觉的Qt还是不要在手机市场里摸混水了,比如说Qt for ios ,谁会用?苹果的开发工具已经比Qt好用了,
若用Qt发布,还要非苹果的第三方库;

Qt还是在windows   desktop,  和linux才是其正道啊。。。
XZoscar@163.com
QQ,351565950
南京
离线xzoscar
只看该作者 2楼 发表于: 2012-12-31
目前的开发 好像都是 不同的端 基于不同的框架开发的 app

虽说Qt跨平台,但真少见过跨平台的 Q t开发的应用程序

真不知道这跨平台的威力,实际体现的在哪里?
XZoscar@163.com
QQ,351565950
南京
离线XChinux

只看该作者 3楼 发表于: 2012-12-31
引用第2楼xzoscar于2012-12-31 21:25发表的  :
目前的开发 好像都是 不同的端 基于不同的框架开发的 app
虽说Qt跨平台,但真少见过跨平台的 Q t开发的应用程序
真不知道这跨平台的威力,实际体现的在哪里?

许多生产用的桌面应用有跨平台需求,是用Qt开发的,消费类应用相对比较少。

二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线phpqinsir
只看该作者 4楼 发表于: 2013-01-07
我个人觉得,应该把怎样创建一个QML组建的技术教给我们。最好是将这个创建过程尽量简单易使用。这样,我们自己来为不同的移动平台写程序会好一些吧。不然,官方出的UI不一定是我们所喜欢的,反正加大了底层包的尺寸。
qtcn.org是我见过最热心的论坛,也是解决问题率最高的论坛。希望,我的问题能让更多的人少走弯路。
离线XChinux

只看该作者 5楼 发表于: 2013-01-07
引用第4楼phpqinsir于2013-01-07 15:22发表的  :
我个人觉得,应该把怎样创建一个QML组建的技术教给我们。最好是将这个创建过程尽量简单易使用。这样,我们自己来为不同的移动平台写程序会好一些吧。不然,官方出的UI不一定是我们所喜欢的,反正加大了底层包的尺寸。

自己写也很方便的,因为无非是一些基本组件的集合(QML)_加逻辑(JS),有必要的话自己加些C++代码。
自己看下 Qt Components for Symbian或MeeGo 1.2 Harmattan(在imports目录下),就会发现他们到底是如何写的了。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线stlf

只看该作者 6楼 发表于: 2013-01-17
基于标准QML可以实现跨平台, 可是标准的QML提供的组件太少。
目前BB10的CASCADES和QTQUICK1.0 差别比较大, 基本是重写了一套QML,特有性比较强,编写跨平台的优秀QML程序现在确实不太容易。
个人有点担心QML技术的碎片化。

现在看来QWIDEGT在各大桌面平台上的跨平台统一性更加好, QWIDEGT也可以移植到移动平台但是却适应不了现代移动平台的发展。
离线XChinux

只看该作者 7楼 发表于: 2013-01-18
希望将来以Qt为官方开发框架的移动平台能统一QML组件API,样子可以各个平台自己去定制,在API上统一就行.
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线tonkv

只看该作者 8楼 发表于: 2013-01-29
引用第2楼xzoscar于2012-12-31 21:25发表的  :
目前的开发 好像都是 不同的端 基于不同的框架开发的 app
虽说Qt跨平台,但真少见过跨平台的 Q t开发的应用程序
真不知道这跨平台的威力,实际体现的在哪里?

就CG行业来讲,跨平台优势非常明显。如三维软件 MAYA。

快速回复
限100 字节
 
上一个 下一个