搞了好几个小时,NokiaSDK现在的版本还不支持Symbian下的QDeclarative项目。也就是说现在用QML写的程序暂时还不能在Symbian系统上跑。 我用的是三星i8910, 在xp下安装了三星官网的PC suit后,才装上i8910的USB驱动。难怪,Declarative项目,Mobility项目现在都在测试中。还是等Qt4.7 release版本吧。Nokia Qt SDK简化了开发环境的搭配,不过目前只能用Nokia自己的手机。比如三星i8910就不能用,在QtCreator里面,project-> symbian->run-> port里面找不到设备。不过我们仍然能够利用命令行的方式编译自己写的程序,然后在非Nokia的symbian手机上跑。
写好QML代码,可以在qmlviewer里面跑,当然也可以直接编译成一个可执行文件的二进制包。虽然这些脚本都是runtime。这个过程很简单。在project项目 .pro文件里面加上 QT += declarative
然后在头文件里面这样写就OK了。具体的一些高级应用,请直接参考Qt4.7Beta的文档。
main.cpp
#include <QApplication>
#include <QDeclarativeView>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QDeclarativeView view;
view.setSource(QUrl("qrc:/main.qml"));
view.show();
return app.exec();
}
main.qml
<RCC>
<qresource prefix="/">
<file>main.qml</file>
</qresource>
</RCC>
news.pro
QT += core gui declarative
TARGET = news
TEMPLATE = app
SOURCES += main.cpp
HEADERS +=
FORMS +=
OTHER_FILES += \
main.qml
RESOURCES += example.qrc \
example.qrc
效果截图: