本发明专利技术公开了一种多卡手机应用软件设计方法,其包括以下步骤:S1、设计一中间层软件适配层,把各个无线模块的数据结构转化成统一的数据结构;S2、根据扩展的UIM/SIM卡个数,扩展中间层和MMI层中的所有不可重入函数所操作的全局变量或者静态变量;S3、在中间层和MMI层中,统一以数据指针的方式访问所述全局变量或者静态变量。本发明专利技术为可以支持多张卡(三张以上手机卡)的手机应用软件设计方法,以满足现在国内多种网络并存的第三代移动通信网络环境。采用该方法设计的手机应用软件支持卡的数量是没有限制的。发明专利技术出数据指针,以最小的代码修改量,复用原来稳定的平台代码,设计出高效的占用内存小的,功能强大的,稳定的支持多卡手机应用软件。
【技术实现步骤摘要】
本专利技术涉及一种多卡手机应用软件设计方法,特别是涉及一种对于庞大的多卡手机应用软件开发,可以大量节省多卡手机应用软件程序开发时间,提高软件执行效率的方法。
技术介绍
目前第三代移动通信技术得到了广泛应用,主要得到部署的移动通信网络有CDMA2000,WCDMA和TD-SCDMA网络。随着第2代或第2.5代的GSM网络、CDMA网络和PHS网络向第3代网络的过渡,手机作为终端产品也在大批量的更新。处于过渡时期,各种网络并存,这样就使得多卡手机需求量大大增加。手机应用软件由支持一张卡到支持多张卡,将符合现行网络需求,但是代码量也自然变大,随着手机代码量的增大,软件执行的效率低,代码占用空间大,以及手机的开发周期变长,成了手机软件开发以及手机成本的瓶颈。如何提高软件的执行效率以不影响用户使用;减小软件的代码量以节约存储器,降低硬件成本;缩短手机应用软件开发周期以加快手机的市场占有率,这些都是手机终端厂商必须要考虑的。
技术实现思路
本专利技术要解决的技术问题是为了克服现有技术中针对多卡手机应用软件开发效率低、代码占用空间大等缺陷,提供一种减小软件的代码量以节约存储器,降低硬件成本的多卡手机应用软件设计方法。本专利技术是通过下述技术方案来解决上述技术问题的:一种多卡手机应用软件设计方法,其特点在于,其包括以下步骤:S1、设计一中间层软件适配层,把各个无线模块的数据结构转化成统一的数据结构;<br>S2、根据扩展的UIM/SIM卡个数,扩展中间层和MMI层中的所有不可重入函数所操作的全局变量或者静态变量;S3、在中间层和MMI层中,统一以数据指针的方式访问所述全局变量或者静态变量;S4、当中间层或者MMI层收到数据结构类型统一的卡的数据后,对于所有不可重入函数,依据扩展的适配后的数据结构内的标识变量,判定数据是来自于哪张卡,然后切换数据指针,通过切换数据指针对相应卡的全局变量或者静态变量进行读写。较佳地,所述标识变量为在原来的数据数据结构的基础上添加的一个变量,用于表示数据是来自于多卡中的哪张卡。较佳地,步骤S3中,定义指针数组,使数据的每个成员分别指向扩展的全局变量或者静态变量,然后定义数据指针,指向指针数组首地址,就可以通过数据指针访问用于存储不同卡数据的全局变量或者静态变量。较佳地,步骤S4中,对于所有可重入函数的代码,可以进行复用,不需要修改。本专利技术的积极进步效果在于:本专利技术为可以支持多张卡(三张以上手机卡)的手机应用软件设计方法,以满足现在国内多种网络并存的第三代移动通信网络环境。采用该方法设计的手机应用软件支持卡的数量是没有限制的。2、专利技术出数据指针,以最小的代码修改量,复用原来稳定的平台代码,设计出高效的占用内存小的,功能强大的,稳定的支持多卡手机应用软件。附图说明图1为本专利技术的系统架构示意图。图2为本专利技术的软件流程图。图3为本专利技术的软件适配层数据转化示意图。图4为本专利技术的支持多卡的数据扩展示意图。图5为本专利技术的数据指针定义示意图。具体实施方式下面结合附图给出本专利技术较佳实施例,以详细说明本专利技术的技术方案。如图1所示,为本专利技术系统的架构图。本专利技术在原有成熟项目的应用软件的基础上,增加了软件适配层,使得扩充卡的数据结构,变成统一的数据结构,送往手机软件中间层,然后扩展手机软件中间层和MMI(Man MachineInterface,人机界面)层中不可重入函数的全局变量或者静态变量,用于专门存放扩充卡的数据,再灵活的运用数据指针,使得不可重入函数变成可重入函数,以达到代码复用,以最少的代码修改,快速地开发出软件执行效率高的、占用内存少的,支持多卡手机应用软件。其中扩展的modem(无线模块)层为与扩展的无线模块对应的服务层,可以用本领域公知的技术手段实现,在此不作赘述。如图2所示,为按照本专利技术的设计方法设计完成后,手机上多卡复用时的具体的执行情况图。具体步骤如下。步骤101,手机驱动层获得手机SIM/UIM卡数据。步骤102,将不同的SIM/UIM卡数据转换成统一的数据结构,同时标识是来自于哪张手机卡。步骤103,判断当前处理函数是否是可重入函数。步骤104,如果是,将数据传递给下一级函数处理。步骤103,如果否,依据数据来自于的手机卡,使数据指针指向相应的存储区域。其中,为便于理解,现对存储区域的数据举例如下,比如可以为短信息、打电话信息或者是SIM卡菜单等。步骤104,利用数据指针对相应卡的存储区的内存数据进行读取、存储、运算或显示。下面分步骤对本专利技术的设计方法进行详细描述。1、对于单张卡手机,单卡模块驱动层数据,直接发送到手机软件的中间层,在中间层处理后,又被直接送往MMI层。当扩展出多个Modem模块后,无论是单卡模块驱动还是扩展的Modem模块的数据都被送往中间层软件适配层。适配层的主要作用是把Modem模块的数据结构转化成都统一的数据结构,如图3所示。转化后的数据结构类型主要是在原来的CDMA层(图中CDMA层仅为举例而已,也可以为GSM等模式,该通讯模式不对本专利技术保护范围进行限制)的数据结构的基础上添加一个静态变量,用来标示这个数据是来自于多卡中的哪张卡。扩展卡的数据经过适配后再转发给软件中间层。2、对于中间层和MMI层中的所有不可重入函数所操作的全局buffer(即全局变量或者静态变量,此处buffer仅为编程中常用的代号而已),依据扩展了的UIM/SIM卡,全局buffer也要做相应的扩展,扩展了几张卡就需要扩充几个buffer,以便用不同buffer存放不同卡发送过来的数据。如图4所示。3、在中间层和MMI软件中,所有不可重入函数,对于全局buffer的访问,统一改成以数据指针的方式访问。定义指针数组,使数据的每个成员分别指向扩展的buffer。然后定义指针,如下图5所示,指向指针数据首地址,这样就可以通过数据指针访问不同的卡的buffer。4、当软件中间层或者软件MMI收到结构类型统一的卡的数据后,对于所有不可重入函数,依据扩展的适配后的数据结构的内的变量,判定数据是来自于哪张卡,然后切换数据指针,通过切换数据指针对相应卡的buffer的读写。而对于所有可重入函数的代码可以复用,不需要修改,这样就可实现在中间层和软件的MMI层两张卡复用同一套代码。可见,通过上述的方案,本专利技术在多卡手机应用软件设计或者代码实现<本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种多卡手机应用软件设计方法,其特征在于,其包括以下步骤:
S1、设计一中间层软件适配层,把各个无线模块的数据结构转化成统一
的数据结构;
S2、根据扩展的UIM/SIM卡个数,扩展中间层和MMI层中的所有不可
重入函数所操作的全局变量或者静态变量;
S3、在中间层和MMI层中,统一以数据指针的方式访问所述全局变量
或者静态变量;
S4、当中间层或者MMI层收到数据结构类型统一的卡的数据后,对于
所有不可重入函数,依据扩展的适配后的数据结构内的标识变量,判定数据
是来自于哪张卡,然后切换数据指针,通过切换数据指针对相应卡的全局变
量或者静态...
【专利技术属性】
技术研发人员:刘家宏,
申请(专利权)人:上海晨兴希姆通电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。