基于NOKIA Qt SDK开发流程总结
发布时间:2011-3-19 16:54
发布者:1770309616
一.安装 1.Nokia Qt SDK安装 按照这个流程Qt_for_symbian_开发环境安装基本上是不会有什么大问题的。但是我要说一个注意的地方,就是Nokia Qt SDK有离线和在线安装两个版本的,我住的小区长城宽带光纤接入2M的带宽,平时下个几百兆的电影,几分钟。用在线安装我装了一天,最后能NEXT了,不是少这个就是少那个文件。基本上个人建议选择离线的吧,虽然比较大,但是问题很少,还能重复利用。 另外上边那个安装流程的链接里面选择的例子是Easeing Curve,本人的机型是N95 8GB版,不支持。所以选择例子的时候要注意,不行的时候多试两个,别像我似的,又费了半天劲才注意到。 集成的Qt Creater让人很不爽,只要应用程序跑不起来,它就告诉你General OS-related error,当然它让人不爽的地方还有很多,这也可能和我经常用VS的编译器有关。 一般情况下如果出现了General OS-related error,第一步可以先通过.sis文件直接在手机上安装的方法,如果不能安装或者运行,手机会给出提示的,上面的Easeing Curve在运行时我手机上显示的就是“功能不被支持!” 2.qt-mobility库的安装 这里,我发一点牢骚,也不知道是不是Nokia的人脑袋进水了,你既然都叫Nokia Qt SDK了,偏偏把qt-mobility这个库另外打包,还要手动安装,我的天啊,做个自动安装的包,能累死你啊,并且还搞的很负责任的一个样子,告诉你这是一个安装时的bug,那首歌怎么唱来着,“那痛苦的滋味,你是否真能体会!”。这个库的安装流程见在Qt S60中使用QtMobility做开发,另外请大家看一下那段红色的字,我始终没有搞明白,我下载了Nokia Qt SDK到底是需要装这个库啊还是不需要装啊,最后经过实践得出结论不用捉摸了,装吧!另外这个连接仅供参考,至于怎么装还是看我的这个吧(我也是费劲查的和试的) 我能确认的安装流程: 1)下载这个库的时候,一定要选择带这个词Source and binary Symbian的那个文件,即该页面里的第三个下载文件,比较大将近200M,其它的,我下了都不行,也不知道为啥,反正我试通了,而且网上搜一下基本都是这个才能成功。 2)解压缩文件所在盘符要和Nokia Qt SDK在一个盘符,中间不能有中文(这个用过Qt Creater的我估计会知道的)。 3)程序开始〉Nokia SDk〉Symbian〉Qt for Symbian command prompt 进入到qt-mobility解压后文件所在的路径 之后执行:configure.bat这个文件,所时间看电脑配置,基本上几分钟。 在我家里的电脑和单位的笔记本运行结果都是一样的: ![]() 直接就是configure failed 我查啊,查啊,到底哪不对,试了好几次,都是这样,放弃了。这个错误不用管,还可以继续,有谁知道怎么解决请告诉我。 4)执行3)完了以后,进入到qt-mobility解压后文件夹,网上说对的我搜到得是这个哥们说的(前辈啊!) 抄录如下: ------------------------------------------------------------------------------------------------------------------------------------------------------------- 问题解决了!!!!! 我的问题出在我安装的qtmobility版本太老了,是1.0.1而在这版本里还没有QCamera的功能,所以我下了一个新的版本,即:在 http://qt.nokia.com/products/qt-addons/mobility里下载,当然这里面你还是需要选择的,就是你要下 windows还是symbian的你要仔细分清,因为在symbian里有适合S60 FP1、FP2和5th。cd到qtmobility 接着是configure 接着qt-mobility-1.1.0-epoc32- 将 还有在下载的安装包里有例子,可以试着编译下,编译通过,就代表你OK了 ------------------------------------------------------------------------------------------------------------------------------------------ 需要注意的: (1)文件夹里有好几个带epoc的压缩文件,晕不,根本就没有说明,如下图: ![]() 首先确定Qt的版本号,打开Qt Creater IDE 的about 看一下,我的是Based on Qt 4.7.0 (32 bit),所以这里肯定选基于4.7.2的文件,另外上Nokia网站上查一下你手机对应的symbian的版本,如N95 8GB版对应的是:S60 3rd Edition, Feature Pack 1,所以应当选3.1版的,最后选的就应当是qt-mobility-1.1.1-s60-qt-4.7.2-epoc32-3.1.zip这个文件进行上面的前辈所写的手动安装说明,以上版本选择,纯属我个人猜的或者是蒙的,反正我没有找到说明。 (2)通过Qt for Symbian command prompt 运行'qmake -v'所获得的路径是不准确的,它返回的是库文件所在的路径,而上面所说的 QTDIR是指NokiaQtSDK\Symbian\SDK这个路径,要不然你找不到他说的那几个文件夹。 5)以上执行完后,打开qt-mobility下的例子程序,打开Nokia ovi套件,连上手机(手机上软件安装,见第一步Nokia Qt SDK安装说明),运行环境选择 symbian device(如下图) ,如果编译能通过,恭喜你!如果不行,你就能体会我当时的心情了,基本上是网上查资料,试,不行,再查,再试,直到编译能通过为止。 ![]() 二.让软件在手机上跑起来 1.纯Qt编写的程序 纯Qt是指只调用Qt标准库的功能而不进行手机相关的应用开发,如HelloWorld程序,不需要签名直接就能运行。 2.万恶的签名 如果第一步安装让我感觉到痛苦,那么和获得Symbian signed签名比起来,就不算啥了,人穷志短啊。网上说的什么获得publish id,生成什么cer文件,下载DevCertRequest程序,下载TC-ConvertP12及生成这个,生成那个,导入这个,导入那个,哥们全试了,结果眼看就要成功了,提交到网上,结果是无效的数字签名,最后的最后,终于查到了,要钱 1600RMB,我想骂人!哥忍了,毕竟没钱不能怨人家! 还好,还有一种方式,官方叫做openSignedOnline,网址是这个,第一个IMEI号,是你想跑的Nokia智能手机的IMEI号,打开手机输入*#06#显示的序列号,输进去,下面那个输入邮箱地址,最后一个把你生成好的.sis文件的路径输进去,之后等着收邮件,邮件里面会有一个确认的链接地址,进行确认,之后再收邮件,会给你发一个你的.sis文件进行了Symbian signed的下载地址,进行下载,下载之后,安装到手机上,运行,就可以看到你的程序运行效果了,如果有问题,修改之后再执行上面的流程,每次都要这样。哥们我改了一下午的程序,就为了我的程序能发短信,没干别的,主要是收邮件。 如果说我在别人手机上装程序,你这样,我能忍!我在我自己手机上玩,还需要你同意,还需要你签名,算你狠! 三.调用短信功能 我弄了这么多天,就是想让手机应用程序,能够自动的发个短信,所以贴上代码(也是网上找的) QMessageService service; QMessage message; QMessageAddressList toList; QMessageAddress::Type addrType(QMessageAddress: hone); toList.append(QMessageAddress(addrType, tr("134XXXXXXXX")));//电话号码//这里可以设置群以号码 message.setType(QMessage::Sms);//短信类型 message.setTo(toList); //message.setSubject("this is the first msg!"); message.setBody(tr("It is success!")); service.send(message);真的好用,谁试谁知道,当我收到短信的那一刻,那叫一个…,哎大海啊,都是TMD水!这回哥真会发短信了!不容易啊!四.变态的Nokia Qt Creater IDE 哥搞开发时间也不算长,带带拉拉才7、8年而已,我见过程序最多的警告也就百八十个的那都算多的了,看看这个狗屁IDE,一个几十行的程序,它给了我多少警告,这种警告根本就是没用,看它比看程序还累,这个只有Nokia Qt Creater 才这样,普通的Qt Creater 这个不是这样的: ![]() 我现在明白了,网上都说“Nokia手机硬件比较优秀,软件一般”,这句话的含义了。 五.总结 最后总结一下,以上是我个人的使用体会,自己看着都觉得复杂,能帮到大家最好,帮不到你也别拍我,Qt相对来说还是一个很新的东西,但是我个人认为非常值得一学,至于Qt的跨平台特性,那对你有意义才有用。我之所以拿NOKIA手机试,也是因为,不想走哪都背着一台电脑,把一些如算授权码的小程序,放到手机上还是很方便的,除此之外我也没有钱买苹果。 一个产品服务还是比较关键的,我认为Nokia的服务有问题,这种模式根本就不利于广大技术人员的技术普及,但是我想说的是,这些问题和Qt没有关系,photoshop就是用Qt编的,功能很强大,这是谁也否定不了的。 |
网友评论