首页| 论坛| 消息

标题:SameGame移植时出现的问题
作者:XChinux
日期:2013-01-07 22:35
内容:

SameGame如图: http://hi.baidu.com/xchinux/item/870495247f8ec8f951fd8754
SameGame原先是参照Linux下的一个SameGame程序做的,一开始做的是MeeGo Tablet,后来增加支持Linux Desktop、Windows Desktop、Symbian^3。程序中使用了Qt Components for Symbian,幸好它在上面平台下都能正常编译出来使用。一直没有系统的看下BB10 Native开发方面所要注意的问题,API手册说明等等,在近日将其向BB10移植中,只是按照以往Qt开发的岁路在处理,发现了几个问题,列举如下:
1. Qt Components for Symbian
    BBNDK中当然是不包含这个的了,需要自己去编译,上qt-project.org上下载了Qt Components for Symbian后,在命令行中自己编译即可,这个倒是没什么大问题。问题在于,在打包发布的时候,要将它带上,其实就是将编译目录中的imports目录,拷贝过来加到自己的项目目录中,在bar-descriptor.xml中加个asset路径配置项即可。
2. 路径问题
    BB10中就和iOS相似,只能在自己的目录下写东西,不能随便访问别人的目录,在bar-descriptor.xml中的asset路径配置中的目标路径都是相对于app/native的,比如下面一行中的配置项,即是将物理路径../imports(相对于.pro文件,bar-descriptor.xml和.pro在同一级目录)映射到app/native/imports路径上。
     imports
    下面这个配置项,则是将物理上的translations目录映射到app/native/qm目录,只打包*.qm文件,其它的不要。
    
        
    
    在C++, QML中,则是使用app/native/xxxx这样的路径来引用,具体这些路径有何说道,还没研究,之后要详细看一下手册。
3. 中文问题
    用Eclipse创建cascades应用时,中文能正常显示,但在SameGame中是传统的Qt/QML应用,执行时中文是方块,显示不出来,后经检查发现是字体的问题,于是用QFontDatabase::families()检索中文字体列表,然后取第一个中文字体QApplication::setFont(xxxx)这样就能正常显示出汉字来了。
4. 分辨率问题
  &#1 ..

回复 发表
主题 版块