- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于BREW平台的手机游戏开发
1 引言
手机已不仅是语音通信的工具,而且逐步成为数据业务开发与应用的平台,中国联通已多次宣布在其cdma 1x通信网络上采用brew和无线java技术来提供数据增殖服务,毋庸回避,brew与无线java在增殖服务方面是相互竞争的,尽管各有特点,两者还是提供了相似的服务类型,联通决定采用brew和java两套平台,是考虑了技术、管理、投资、经营、政治、经济、文化等诸方面因素的综合决策。
brew的技术优势在于基于c/c++语言进行的平台开发对于许多程序员来讲均十分熟悉,移动设备制造商无需再开发专有的软件平台,可降低移动设备技术门槛及产品上市门槛,满足终端用户对最新数据应用的需求,而java的软件方面服务应用较少,在硬件方面目前支持j2me的移动设备价格较高,处理速度较慢。
brew是高通公司提供的端到端的无线应用开发、设备配置、应用分发、计费和支付的解决方案,借助brew技术,用户可以随时随地地从网上下载自己喜爱的各种应用,定制自己的手机功能使之更具个性化,因此,在当前移动数据应用的大众消费中,brew正扮演着越来越引入注目的角色,应用步伐也在加快。
2 brew简介
brew就是无线二进制运行环境(binary runtime environment for wireless),他是高通公司2001年推出的基于cdma网络"无线互联网发射平台"上增殖业务开发运行的基本平台。
他提供一个高效、低成本、可扩展和熟悉的应用程序执行环境(aee),着重开发可无缝植入任何实际手持设备的应用程序,与建立在对内存空间、处理器速度和相关硬件有较高要求的操作系统之上的高端产品不同,brew在现有的设备类型上运行。传统上,人们热衷于能否利用高速asic(特定用途集成电路)技术实现新的应用功能,甚至在低端设备上,要使用更多的功能则需要无缝集成。现在,brew提供的功能环境就好象pc机上的操作系统一样,可以通过服务提供商下载指定类型的应用程序或游戏来使用,同时,通过brew接口功能,供应商可以提供成套完整的资讯、商务、娱乐功能,在将来的版本中,brew内核类将能提供诸如蓝牙技术、全球定位系统(gps)和基于数据业务的电话等服务。
brew提供了一套应用程序接口(api),制造商和开发人员可以随时对运行环境进行扩展,提供应用程序需要的各种附加性能模块,如"无线互联网发射平台"中包含的多媒体、多种连接方式、位置服务、用户界面、网络等功能套件。
brew体系结构
brew应用程序接口(brew api):brew的api以一组接口类的方式组织起来,每个类定义提供某一特定服务的一组函数,使开发商无需了解设备的内部机理也能从事无线应用的开发。
brew软件开发包(brew sdk),其中brew sdk主要包括:
brew mif编辑器(brew mif editor)用来生成模块信息文件,在mif中包含该模块支持的类和小程序的信息,brew中的所有类、小程序必须拥有一个唯一的classid,即标识符。
pbrew资源编译器(brew resource editor)用于创建应用程序的资源,包括字符串、图片、对话框。
brew应用执行环境(bmew aee)是一个可充分扩展的,面向对象的应用程序开发和执行环境,该环境提供一个使用c或c++开发小程序和共享模块的平台,除了向应用提供brew api服务,aee同时管理应用领域的执行,及时响应用户和一些紧急事件。
brew emulater用于模拟选定的手持设备,可以加载brew环境下开发的测试小程序和类。
4 brew开发实例
下面介绍一个以brew技术在vc6.0下开发的纸牌游戏。
4.1 mif的创建
在vc6.0下通过brew application wizard建立一个brew工程,并建立相应的mif文件(见图1)
纸牌游戏相关字符串的建立如图2所示。
纸牌相关图片的建立(见图3)。
4.3 部分代码
创建实例:
brew应用程序模型是基于事件驱动的引擎,加载小程序以后,小程序将推动handleevent函数收到的事件接收所有输入信息。
由于brew是一个事件驱动环境,因此要求及时处理事件,这意味着小程序应该迅速处理事件并立即返回,brew将事件传递给小程序时,小程序会通过返回true(已处理)或false(未处理)指示是否已处理事件。如果小程序必须将事件传递给其他事件处理程序(如控件),他只需返回调用的结果。
事件处理函数:
4.4 仿真和编译
程序完成后,在vc下编译生成dll文件,然后在brew emulater上仿真运行,如图4所示,最后将应用程序编译为手机版本,其使能成功地在手机上运行。
5 结语
高通公司推出的brew解决方案,为移动数据业务的开发提供了一个崭新的平台,目前运营商已经能通过其cdma2000 1x服务向用户提供多种引人入胜的brew无线应用,我们相信brew将给用户提供越来越多的无线数据应用和服务,带给大家更多的享受和便利。