您的位置:首页 > 其它

《BREW进阶与精通――3G移动增值业务的运营、定制与开发》连载之87――面向BREW平台的移植

2010-11-02 11:07 309 查看
在移植之前,要确定移植的目标即该应用可能采用的商业模式,判定哪些内容需要移植,是应用的算法还是数据结构,是商业逻辑还高层网络逻辑,或者是用户界面。
在移植之前的另一件事情是确定哪些是平台独立的接口属性,哪些是特定平台的接口属性。看一看有没有使用C的标准库函数,有没有依赖于特定平台的函数,最好是对这些宏和函数进行封装而不是简单的替代他们。明确运行时的限制同样非常重要,例如内存,线程,同步接口,字节对齐等等。对于原来基于多线程的应用,在移植到BREW平台上的时候,一般要采用回调机制来实现(AEECallback)。
在移植的开始时最好建立一个自己的测试环境来检验应用移植层关键的API以及应用中重要的API,并提供对内存和资源使用状况的跟踪。采用OEM层类似的方法,可以建立一个应用移植层的参考实现,将与平台相关的属性在这一应用移植层实现,这样会使将来的应用调试非常简便。
在将应用移植层建立之后,需要在自己的测试环境进行检验,首先是单元测试,然后在模拟器运行,最后在手机上运行测试,同时检测内存的使用状况和算法执行的性能。在测试完应用移植层外,就可以将目标应用平台独立代码和应用移植层集成起来了。这时可能会合并或者创建自己的用户界面,接下来就是测试整个应用,然后认证(一般是商用测试TBT)并且发布移植的应用了。
将一个PC上的应用移植到BREW上时,要特别关注内存模型,一般要重写算法和数据结构,考虑一个单独的内存分配器,同时要注意运行时的性能。从其他手机平台向BREW平台移植可能会简单一些,通常要特别注意文件组织结构和用户界面。在移植的时候要牢记,不要读写应用中的数据段,BREW中不建议全局和静态的变量,注意字节对齐和高地位的字节顺序以及异步通信方式。在移植的时候最好能够获得更多的编译器警告,通常到Level 4 的告警,可以把这些告警当做是移植时产生的错误。在定义依赖于平台的接口时,以及在手机上运行时,要剖析内存和CPU的性能。
本文出自 “我相信” 博客,请务必保留此出处http://wirelesscao.blog.51cto.com/3397462/631754
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐