资源描述:
《基于brew平台的手机电话簿的设计与开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、文章编号:100025714(2006)0423452043基于BREW平台的手机电话簿的设计与开发尚宇1,储妮晟2,雷斌1(1.西安工业大学电子信息工程学院,西安710032;2.中国石油集团测井有限公司)摘要:BREW是在移动数据增值应用开发领域出现的新技术.阐述了BREW技术的特点和组成,介绍了手机电话薄的功能模块,分析了软件的结构及实现.然后详细阐述了在BREW平台下的手机电话薄的设计与开发过程,在VC++环境下基于BREW平台开发了手机应用程序,最后通过BREWSDK开发工具包中的Emulator
2、在计算机上进行了手机仿真,最后通过编译器下载到手机上.实践表明,基于BREW的手机软件开发方便快捷,较好地满足了用户的个性化需求.关键词:中图号:BREW;手机;电话薄;CDMA文献标识码:ATP311.52BREW(BinaryRuntimeEnvironmentforWire2less,无线二进制运行环境)是高通公司2001年推出的基于CDMA网络“无线互联网发射平台”上增值业务开发运行的基本平台[1].它可以将普通的移动电话机变为有无线网络接入功能的移动计算终端,并可通过在手机软件中插入BREW层来屏
3、蔽不同手机硬件以及下层软件(OS,BSP)的不同,并向上层应用软件提供统一的API接口.BREW的技术优势在于无需再开发专有的软件平台,处理速度较快,且在移动设备中仅需极少的内存(大约150KB),而JAVA在软件方面服务应用较少,在硬件方面目前支持J2ME的移动设备价格较高,处理速度较慢.因此,基于BREW的开发已成为主流的CDMA手机软件的开发方式.BREW的体系结构包括API(应用程序接口)和SDK(软件开发工具).BREWAPI是以一组接口类的方式组织起来的,每个“类定义”提供某一特定服务的一组函数
4、,使开发者无需了解设备的内部机理也能从事无线应用的开发[2].BREWSDK是BREW应用开发的重要工具,BREWSDK开发包提供基于C/C++、Java等编译环境的运行库和面向对象的类结构[3],主要包括BREWMIF编辑器、BREW资源编辑器、BREW应用执行环境(BREWAEE)和BREWEmulator.11.1手机电话簿的功能模块电话薄模块的软件构成电话薄模块的软件构成如图1所示.BREWSDK中每个应用程序模块均作为独立的WindowsDLL开发,程序启动时,AEE动态加载并执行本程序的.dll
5、文件.每个模块可以包含一个或多个小程序,且必须包含一个与之关联的MIF.使用BREWMIF编辑器创建的.mif文件是通过MIF编辑器创建的模块信息文件,包含关于模块内容的信息,如支持的类、支持的小程序等详细信息,还包含每个模块类唯一的ClassID.ClassID是客户端应用程序的唯一标识,若经本地生成ID就会产生一个.bid文件.模块可以读取BREW资源文件中的数据,为应用程序提供字符串、图像和对话框等资源.要开发小程序的资源,需要使用资源编辑器生成二进制资源文件.bar和对应的资源头文件.另外就是小程序
6、源文件.c和头文件.h,是开发工3收稿日期:2006202228作者简介:尚宇(19732),女,西安工业大学讲师,主要研究方向为数字信号处理、计算机仿真技术.E2mail:shangyu@mail.xait.edu.cn.作的核心.获得程序有关信息,建立程序运行实例,分配程序内存,并在系统中注册程序的事件管理器.然后通过主函数HandleEvent()来触发应用程序的事件发生,根据触发事件的不同,来执行相应的事件处理程序.当程序收到EVT_APP_STOP事件时,释放在开始事件处理时分配的内存,结束程序,
7、将状态返回AEE.2.1创建模块信息文件MIF和资源在VC6.0下通过BREWApplicationWizard建立一个BREW工程,申请ClassID(BREW模型的公共类和小程序均使用32位ID),建立相应的MIF文件,如图2所示.然后,利用资源编辑器建立电话薄应用程序所需的字符串、图像和对话三种资源,将其编译成.bar文件供程序调用.系统启动时(在设备或Emulator上),BREW会枚举出所有的MIF.对于每个MIF,BREW将获取该MIF中所有应用程序和类的列表.BREW向应用程序提供这些信息(使
8、用ISHELL_EnumApplet、ISHELL_QueryClass等API).应用程序管理器使用此信息在设备屏幕上显示带有图标和标题的应用程序列表.图1电话薄模块软件构成及逻辑关系Fig.1Structureofphonebookandlogicrelation1.2电话薄模块的功能子模块系统分为五个功能子模块:结构子模块、菜单部分子模块、显示部分子模块、UIM卡对信息进行处理子模块以及手机对信息进行处理子