基于BREW的无线数据业务开发论文

时间:2021-09-08 09:02:15 论文范文 我要投稿

基于BREW的无线数据业务开发论文

  摘要:本文一连了BREW开发开台,并以一基于BREW的单机版手机游戏开发为例,着重用述基于BREW的无线数据业务开发漉程。

基于BREW的无线数据业务开发论文

  关键词:BREW 无线数据业务 SDK 接口

  中图分类号:TN92 文献标识码:A 文章编号:1674-098X(2008)ll(a)-0232-02

  1前言

  当今,移动数据通信作为移动通信与数据通信的结合点,有着广阔的市场与发展前景。新一代移动通信领域竞争的重点是数据业务的竞争。到2005年,移动数据业务将占到无线业务量的70%,数据业务已经成为各大运营商之间竞争的关键。为了争抢数据业务这块市场,国内的运营商都在积极发展自己的业务市场。

  2关于BREW

  BREW,即无线二进制运行环境(Binary Runtime Environment for Wireless),是高通公司推出的基于CDMA网络“无线互联网发射平台”上增值业务开发运行的基本平台。相比其他开发环境,BREW是一个更底层的技术。它可以把手机从一个普通的移动电话机变成一个有无线网络接入功能的移动终端。并提供一个高效、低成本、可扩展和熟悉的应用程序执行环境(AEE)。同时,通过BREW接口功能,供应商可以提供成套的完整的资讯、商务、娱乐功能。它的内核类还能提供诸如蓝牙技术、全球定位系统(GPS)和基于数据业务的电话等服务。由于需要更少的内部应用程序开发和集成任务,OEM(Original Equipment Manufacturer,原始设备生产商)可以更加快速地推出新设备。用户可以选择和下载适合自己喜好的无线软件。

  3 BREW数据业务的开发流程

  由于Brew开发环境对众多无线手持设备的支持,基于Brew的应用开发只需考虑在Brew环境下编写应用程序即可,而不需要对每个新的电话型号进行应用程序修改。在创建Brew应用程序时,需要用到:BREW软件开发包(SDK)、Windows XP(或者Windwows2000)操作系统和ARM编译器。Brew SDK嵌入到Visual C++里面,它整个的编写与编译过程跟一般c++程序是一样的,所不同的是在生成DLL文件时要用到Brew的一些文件:Brew SDK提供的BrewAEE头文件、用于创建简单模块的Brew助手源文件、小程序源文件和头文件、MIF编辑器创建的MIF文件和由资源编辑器编译成的资源头文件。当然资源头文件有时也是可选的。其中Brew AEE提供了一个使用C或c++开发小程序和共享模块的平台,它是一个能增强可用性的事件驱动结构类。

  Brew中对所有小程序事件的处理都放在HandleEvent函数中,发送给小程序的事件包括键盘、对话框和控件更改事件等。它为Brew提供了所有的接口信息,每个接口封装了一组资源和允许管理这些资源的方法。下面具体以一简单的单机版游戏为例,阐述Brew无线数据业务的开发流程:

  (1)在VC6.0的编辑环境下建立一个Brew工程文件,同时建立MIF文件。

  (2)建立全局变量结构体,该结构体主要包含程序中用到的接口实例。另外,在处理小程序事件响应时,要用到状态(根据不同的程序而定,有的程序不需要定义),因此还要定义一个能指示手机页面状态的数据结构。一般把这些数据结构都放在一个头文件里,以方便随时加载。包含接口实例的结构体主要包含了以下内容:typedef struct _QtestApp{AEEApplet a;//结构体的首地址上强制性存放了一个AEEApplet的实例,里面包含了一些基本的接口实例。IImage*m_pBackBarImg,//指示加载图像实例IMenuCtl* m_pMenu,//指示主菜单实例ITextCtl* m_pPnum;//用户将游戏推荐给好友,指示好友手机号码的文本控件实例;ITextCtl* m_pNiName,//指示好友呢称的文本控件实例;IStatic* m_pIStatic;//指示静态文本控件的实例,(注:Istatic接口与ItextCtl虽然都能创建文本控件,但两者有本质的区别:前者允许创建静态文本控件,该控件的文本信息都是只读的,不能修改,后者创建的文本控件的文本信息可以编辑修改)}Qtest

  (3)在初始化函数中初始化以上接口实例。ISHELL_C reateInstance(pApp- >a.m_pIShell,AEECLSID_TEXTCTL,(void**)(&pApp->m_pPnum》 //初始化指示好友手机号码的文本控件实例ISHELL_C reateInstance(pApp- >a:m_pIShell,AEECLSID_TEXTCTL,(void**)(&pApp->m_pNiName》//初始化指示好友呢称的文本控件实例

  (4)处理消息事件

  Brew程序的所有消息都放在Handl_eEvent函数中处理。对一般单机版小游戏,程序要处理以下的事件响应:EVT_APP_RESUME://应用程序恢复,当用户接收呼叫或SMS消息时,应用可以自动暂停并在随后恢复运行。EVT_APIx_START://启动主应用程序,加载主菜单EVT_KEY://处理手机上所有按键响应

  如:按手机上的SOFT1键把游戏推荐给好友的处理过程如下,

  if(ITAPI_SendSMS(pITapi,cc, (char*)pzPhone,O,NULL, pApp->a.m_pIShel)= =SUCCESS)ISHELL_SetTimer(pApp->a.m_pIShell, BANNER_ DISPLAY_TIMER,(PFNNOTIFY)My_DisplayInScreen, (void*)pApp)

  //其中cc指代输入的好友名字,pzPhone指代好友手机号码//ISHELL_SetTimer是个回调函数,

  它表示把游戏按输入的手机号发送给好友后等待BANNER_DISPLAY_TIMER时间返回到原来的推荐好友界面。

  EVT_COMMAND://处理菜单命令,一般指放在资源编辑器中的菜单响应以上通过二个简单的.小例子介绍应用程序的编写过程,编写好的应用程序在Brew模拟器上通过后,通过ARM编译器生成mod文件。以游戏为例,将程序提交到联通服务器上供联通用户下载,所要提交的程序清单分别为bar文件(资源编辑器编译后生成的文件)、mif文件和mod文件(应用程序编译后生成的文件),其中bar文件在有些程序里面是可选的。

  使用BREW AppLoader将应用程序上传到手机里面,但是要注意提交的应用程序位置。以游戏为例,如下所示的程序存放位置:

  /brew/sch/qtest.mif -//由BREW

  MIF编辑器生成

  /brew/sch/qtest/-qtest.bar -//由

  BREW资源编辑器生成

  /brew/sch/qtest/ qtest.mod -//使

  用ARM BREW编译器编译和链接

  /brew/sch/qtest/ qtest.sig -//数字签名

  /brew/sch/qtest/qtest.txt -//应

  用程序要访问的文件

  上传到电话上的所有目录和文件名都必须采用小写形式。对于附加的文件(如文本)也要复制到应用程序目录,或应用程序目录的子目录。数据签名是使用BREWTestSig Generator生成的,.sig文件名的第一部分必须与.mod文件名的第一部分相同。把文件上载到手机后要重新启动手机,否则会提示出错。

  将提交的应用程序清单通过TRUEBREW测试以后,可以放在运营商的下载服务器上。QUALCOMM将使用数字签名对用户的应用程序签名。运营商下载服务器和客户手持设备将查找该签名以对应用程序下载进行验证。

  4结语

  BREW平台提供了完整的端到端解决方案,它把无线数据业务带到了一个崭新的发展天地,使数据业务的分销渠道更加完善。随着大众对数据增值业务的需求发展,相信Brew的开发变得越来越普及。

  234科技创新导报Science and Technology Innovation Herald

  参考文献

  [l]移动通信在线BREW是什么?[EB/OL]

  [21许江伟,陈平.BREW平台上的手机软件开发[J].计算机应用,2003,10.

  [3] QUALCOMM Incorporated.BREW2.0SDK用户指南[M/CD].QUALCOMM Incorporated,2002.

【基于BREW的无线数据业务开发论文】相关文章:

浅谈基于Android 平台池塘溶解氧信息无线监测软件的开发论文06-28

浅谈姿态感知无线鼠标的开发论文06-08

浅论基于Delphi的数据库开发论文06-28

基于TD—LTE的高铁无线网络技术开发的弊端和障碍论文06-30

浅析基于UML的软件开发及支持环境论文06-27

浅谈基于CAN网络的机车调试软件开发的论文06-11

基于制造业优化产品开发流程的研究的论文10-11

基于MapObjects的GIS综合应用开发07-14

基于XML的GIS工程研究与开发08-01