当前位置:编程学习 > wap >>

meego平台程序开发总结

 基于meego平台开发应用程序有一段时间了,尤其是最近一个多月,天天加班,赶进度。目前,这个阶段的代码终于冻结更新了,因此,也有时间静下心来总结一下。  
      1.  meego平台处于一个持续更新的状态,一些底层的库,在上游更新的很快,但是,编译到meego平台的时候,则是远远的落后于上游的更新速度。这种策略,跟ubuntu这类桌面环境是相似的。对于开发团队来说,如果使用meego的sdk和模拟器,则不会有什么大的问题。但是,我们的团队采用的方法是在PC上直接安装一些比较底层的库的最新的版本,比如libmeegotouch,然后开发代码,在PC上先调试运行,然后再使用meego的sdk为目标平台重新编译一次,这种做法的好处就是开发起来更方便,不利的地方就是由于PC上库的版本比meego平台上对应的库的版本高,需要经常检查函数是否和版本匹配。 

      2. meego应用程序的启动速度,比qt程序会慢一些,在PC上,这种启动速度,勉强还可以接受,但是在我们的目标平台上,则慢的出奇,超出了可以忍受的范围,目前正在进一步分析慢的原因,想办法解决。 

      3. meego中,使用了tracker数据库,从我们团队成员的学习情况以及第三方团队的反馈信息来看,这个东西有一定的难度,学习成本比较高,虽然trackr很强大。 

      4. meego的音频子系统,推荐使用的pulseaudio音频后台程序,最近一段时间,开发任务中暂无音频相关程序,所以没有持续跟踪 pulseaudio的状态,但是就前两个月的调试结果来看,meego上的pulseaudio还没有达到很稳定的状态。(我们使用的是intel的处理器和平台,arm平台上meego的音频子系统,可能情况不一样,我没有用过)

      5. meego的视频子系统,后端使用的是gstreamer框架,所以用起来还是很方便的,但是,gsreamer还是太底层,上层应用开发者,推荐使用的是qtmobility中的易做图框架,这也是个新东西,需要学习(一个多月前我下载的libmeegotouch代码中,本来有个 MVideoWidget,直接使用gstreamer,可以播放本地视频,但是最新的libmeegotouch代码中,这个widget已经被移除了,估计是让为给qtmobility中的易做图)。另外,虽然底层的框架是gstreamer,但是,硬解码相关的gstreamer插件,现在还不可用,应该还需要再等一段时间才会集成进来。 

      6. meego上的鼠标手势,是基于qt的gesture的,现在也还不完善,qt中定义的五种基本手势,我们的平台上目前只有3种,而且,最诡异的是,gestureEvent的传递,是不确定的,有些时候有这个event,但是有些时候又没有,为此我们反复调整过好几次代码。 

      7. meego中的css,这是我们遇到的最头痛的问题,我们在PC上调好的css文件,在meego平台上运行的时候,很诡异的出现整体失效的情况,检查过很多遍,我们的css语言绝对是完全正确的。而我们发现,引起整体失效的原因,竟然是css文件中某些位置上的空格,或者是某个单位值,或者是某个小数点。这个问题现在实在没有办法解决,只能等待平台上meego的升级。 

      8. 黑屏现象,这是一个系统级的bug,程序在运行的时候,经常会黑屏,然后xserver重启。 

      9. event循环挂住,这个是在测试中发现的,程序界面还在,但是不响应任何事件,通过调试发现,整个事件循环在某个地方被挂住了,直接导致程序无法响应后续的event,这个情况很难进一步调试,目前也没有解决。  

      总的来看,meego现在还不够稳定,没有达到产品级的要求,还需要继续努力。作为meego平台应用程序开发者,希望meego尽快完善起来。

补充:移动开发 , 其他 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,