生成usim卡中菜单的方法及系统的制作方法

文档序号:6330856阅读:572来源:国知局
专利名称:生成usim卡中菜单的方法及系统的制作方法
技术领域
本发明涉及通信领域,尤其涉及生成USIM卡中菜单的方法及系统。
背景技术
目前,以Java卡作为3G USIM卡,要求在Java卡基础上兼容传统的已经广泛商用 的OTA技术。由于Java卡的国际规范和OTA技术规范在一级菜单的排序上分别有各自的 要求,同时所有Java应用的相对菜单顺序和OTA应用的相对菜单顺序分别由不同的服务器 单独管理,再加上实际商用时又要求根据业务的等级进行菜单的灵活排序,因此必须就在 一张卡上实现对Java应用菜单和OTA应用菜单的混合排序。现有技术中,OTA应用的规范,例如《中国联通OTA卡技术规范第二部分支持OTA 下载的STK卡技术规范》,要求支持OTA的卡在组织SetupMenu (菜单建立)命令时要按照 OTA大类的索引从小到大排列,OTA大类的索引在卡内不一定连续,也不一定从0x01开始。现有技术中,Java应用的规范,例如《ETSI TS 102 226 Remote APDU structure for UICC based applications)) (ETSI TS 102 226 基于应用的 UICC 远程 APDU 构架)和 《ETSI TS 102 241 Smart Cards ;UICC Application Programming Interface(UICC API) for Java CardTM)) (ETSI TS102 241智能卡Java卡的UICC应用编程接口)的规范要求, Java UICC toolkit applet应用为有菜单的Toolkitjava电信应用,在安装的时候必须指 定应用安装参数,安装电信应用菜单时,Java应用服务器向USIM卡下发安装指令,安装指 令中指定的应用安装参数包括菜单入口项的位置序号和菜单序号。本发明中以下菜单应用 指有菜单的Toolkitjava电信应用。位置序号的范围是0-255,根据用户卡上已有菜单的个数,位置序号从1开始升序 计算,例如假设用户卡上已有3个Java应用菜单,分别是javal,java2,java3,则对应的位 置序号为1,2,3。如果要新安装一个Java应用菜单,则根据安装参数中指定的位置序号值 和用户卡上已有的菜单个数进行比较,添加到相应的位置。例如要新添加一个Java应用菜 单Java4,如果安装参数中的位置序号为1,则该菜单入口项排在第一位,其他项顺延,安装 成功后菜单顺序为Java4,Javal, Java2, Java3,对应的位置序号由用户卡片自动更新为1, 2,3,4 ;如果安装参数中指定的位置序号为大于等于4小于等于255的任一值,则安装成功 后菜单顺序为Javal,Java2, Java3, Java4,对应的位置序号由用户卡片自动更新为1,2,3, 4。如果安装参数中的位置序号指定为0,则用户卡片自动将该菜单入口项添加到所有菜单 入口项的最后一个位置,并自动改变其位置序号与菜单入口项个数的值相等。Java电信应用菜单入口项的菜单序号的取值范围也为0_255,由安装参数指定, 但是要求同用户卡上已安装的菜单入口项的菜单序号不相同,否则安装失败。其中取值范 围1-127由安装参数指定,用户卡不会自动更改;如果安装参数指定菜单入口项的菜单序 号为0,则用户卡在128-255之间给该菜单入口项自由分配一个未被使用的菜单序号,安装 参数中不可以指定菜单序号为128-255之间的值。菜单入口项的菜单序号和位置序号之间 不存在关联关系。
由于Java应用的安装指令及参数要由Java应用服务器来设置,而该Java应用服 务器不负责管理和维护OTA的菜单顺序,因此必须要制定统一的管理规则,让Java应用管 理平台能够按照一定的规则进行Java应用菜单的灵活调整,同时不破坏原有的OTA应用服 务器对OTA—级菜单的管理,让所有的用户卡片表现一致。现有技术方案的问题在于,现有的Java卡的国际规范和OTA技术规范在一级菜单 的排序上分别有各自的要求,同时所有Java应用的相对菜单顺序和OTA应用的相对菜单顺 序分别由不同的服务器单独管理,无法在一张USIM卡上对Java应用菜单和OTA菜单进行兼容。

发明内容
为解决上述问题,本发明提供了生成USIM卡中菜单的方法及系统,能够在USIM卡 中完成对Java应用菜单和OTA应用菜单的相互兼容。本发明公开了一种生成USIM卡中菜单的方法,USIM卡中包括Java应用和OTA应 用,所述Java应用具有菜单,所述方法包括步骤1,USIM卡依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中为每 个分组预留菜单入口项;步骤2,Java应用服务器接收并记录各个USIM卡中已有Java应用的信息以及所 述USIM卡中为OTA大类预留菜单入口项的信息;根据所述记录的信息为Java应用计算位 置序号,以使Java应用被插入到OTA大类的分组间,并生成除位置序号外的其他安装参数, 向USIM卡下发包含安装参数的安装指令;步骤3,OTA应用服务器依据OTA应用规范向USIM卡发送命令;步骤4,USIM卡依据接收到的OTA大类的命令中的OTA大类ID判断所述命令中 OTA大类所属分组,在所述分组内对所述OTA大类进行对应操作,分组中OTA大类排列顺序 为大类ID从小到大的顺序,并且分组中OTA大类数量不超过预留的菜单入口项数量,对应 修改菜单入口列表中的菜单入口项;USIM卡依据接收到的Java应用的安装指令对Java应 用进行排序,根据安装指令中的位置序号将Java应用插入到相应分组间;对菜单入口列表 中状态为启用的菜单入口项按位置序号由小到大的顺序组织菜单建立命令,生成菜单。所述步骤1进一步为,步骤21,USIM卡依据大类ID将OTA大类分组;步骤22,USIM卡在Java的菜单入口列表中为每个分组预留菜单入口项,所述每个 菜单入口项包括状态、位置序号和菜单序号,初始化状态为禁用,设置预留菜单入口项的位 置序号的范围。所述步骤2还包括步骤31,Java应用服务器为所管理的每个Java应用分配表示Java应用菜单在终 端显示顺序的位置优先级;所述步骤2中为Java应用计算位置序号进一步为,步骤32,根据所述记录的信息和所述位置优先级为Java应用计算位置序号,使得 Java应用被插入到OTA大类的分组间,并且Java应用的排序同Java应用的菜单在终端中 显示的顺序一致。
所述步骤2还包括步骤41,Java应用服务器记录每张USIM卡可承载的未被锁定的最大Java应用个 数;步骤42,Java应用服务器在准备发送Java应用下载的安装指令或已有Java应用 解锁的相关指令时,根据记录的信息判断作为发送对象的USIM卡中已存在而未被锁定的 Java应用个数是否已经达到所述USIM卡对应的最大Java应用个数,如果是,则不进行发 送,否则,发送所述安装指令或所述相关指令;所述步骤4还包括,步骤43,USIM卡接收到所述解锁的相关指令后,按所述指令进行对应解锁操作。所述步骤2中生成除位置序号外的其他安装参数进一步为,步骤51,依据Java应用规范生成菜单序号为00,以使USIM卡自行配置对应的菜 单序号;步骤52,依据应用提供商提供的配置,生成除位置序号和菜单序号的其他安装参 数。在所述OTA大类的命令的操作为增加大类时,所述步骤4中在所述分组内对所述 OTA大类进行对应操作进一步为, 步骤61,依据OTA大类ID,将被增加的OTA大类和所属分组中的OTA大类排序,确 定所述被增加的OTA大类在分组中的位置;步骤62,将所述被增加的OTA大类插入所述位置,并依据命令修改对应菜单入口 项的状态。所述步骤61前还包括步骤71,判断增加所述OTA大类后,所述分组中的OTA大类数量是否超出为分组预 留的菜单入口项数量,如果是,则禁止所述增加操作,否则,执行步骤61。在所述OTA大类的命令的操作为删除大类时,所述步骤4中在所述分组内对所述 OTA大类进行对应操作进一步为,步骤81,将所述OTA大类对应菜单入口项的状态修改为禁用。所述步骤4中组织菜单建立命令时,判断所有启用的菜单入口项相加,指令数据 是否超过规定长度,如果是,则按位置序号从大到小的顺序将超出的菜单入口项从菜单建 立命令中除去。在菜单入口项有变化时,所述步骤4还包括,重新根据菜单入口项当前状态构建 菜单建立命令,并确保指令数据不超过规定长度。本发明还公开了一种生成USIM卡中菜单的系统,USIM卡中包括Java应用和OTA 应用,所述Java应用具有菜单,其特征在于,所述系统包括USIM卡、Java应用服务器、和 OTA应用服务器,所述USIM卡,用于依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中 为每个分组预留菜单入口项; 所述Java应用服务器,用于接收并记录各个USIM卡中已有Java应用的信息以及 所述USIM卡中为OTA大类预留菜单入口项的信息;根据所述记录的信息为Java应用计算 位置序号,以使Java应用被插入到OTA大类的分组间,并生成除位置序号外的其他安装参
8数,向USIM卡下发包含安装参数的安装指令;所述OTA应用服务器,用于依据OTA应用规范向USIM卡发送命令;所述USIM卡还用于依据接收到的OTA大类的命令中的OTA大类ID判断所述命令 中OTA大类所属分组,在所述分组内对所述OTA大类进行对应操作,分组中OTA大类排列顺 序为大类ID从小到大的顺序,并且分组中OTA大类数量不超过预留的菜单入口项数量,对 应修改菜单入口列表中的菜单入口项;依据接收到的Java应用的安装指令对Java应用进 行排序,根据安装指令中的位置序号将Java应用插入到相应分组间;对菜单入口列表中状 态为启用的菜单入口项按位置序号由小到大的顺序组织菜单建立命令,生成菜单。所述USIM卡在依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中为每 个分组预留菜单入口项时进一步用于依据大类ID将OTA大类分组;在Java的菜单入口列表中为每个分组预留菜单入口项,所述每个菜单入口项包 括状态、位置序号和菜单序号,初始化状态为禁用,设置预留菜单入口项的位置序号的范 围。所述Java应用服务器还用于为所管理的每个Java应用分配表示Java应用菜单 在终端显示顺序的位置优先级;所述Java应用服务器在为Java应用计算位置序号时进一步用于根据所述记录的 信息和所述位置优先级为Java应用计算位置序号,使得Java应用被插入到OTA大类的分 组间,并且Java应用的排序同Java应用的菜单在终端中显示的顺序一致。所述Java应用服务器还用于记录每张USIM卡可承载的未被锁定的最大Java应 用个数;在准备发送Java应用下载的安装指令或已有Java应用解锁的相关指令时,根据记 录的信息判断作为发送对象的USIM卡中已存在而未被锁定的Java应用个数是否已经达到 所述USIM卡对应的最大Java应用个数,如果是,则不进行发送,否则,发送所述安装指令或 所述相关指令;所述USIM卡还用于接收到所述解锁的相关指令后,按所述指令进行对应解锁操作。所述Java应用服务器在生成除位置序号外的其他安装参数时进一步用于依据 Java应用规范生成菜单序号为00,以使USIM卡自行配置对应的菜单序号;依据应用提供商 提供的配置,生成除位置序号和菜单序号的其他安装参数。在所述OTA大类的命令的操作为增加大类时,所述USIM卡在所述分组内对所述 OTA大类进行对应操作时进一步用于依据OTA大类ID,将被增加的OTA大类和所属分组中的OTA大类排序,确定所述被 增加的OTA大类在分组中的位置;将所述被增加的OTA大类插入所述位置,并依据命令修改对应菜单入口项的状 态。所述USIM卡在确定所述被增加的OTA大类在分组中的位置前还用于判断增加所 述OTA大类后,所述分组中的OTA大类数量是否超出为分组预留的菜单入口项数量,如果 是,则禁止所述增加操作,否则,进行所述确定所述被增加的OTA大类在分组中的位置。在所述OTA大类的命令的操作为删除大类时,所述USIM卡在所述分组内对所述
9OTA大类进行对应操作时进一步用于将所述OTA大类对应菜单入口项的状态修改为禁用。所述USIM卡在组织菜单建立命令时进一步用于判断所有启用的菜单入口项相 加,指令数据是否超过规定长度,如果是,则按位置序号从大到小的顺序将超出的菜单入口 项从菜单建立命令中除去。在菜单入口项有变化时,所述USIM卡还用于重新根据菜单入口项当前状态构建 菜单建立命令,并确保指令数据不超过规定长度。本发明的有益效果在于,通过在菜单入口列表中为OTA大类预留菜单入口项,能 够在USIM卡中完成对Java应用菜单和OTA应用菜单的相互兼容;通过菜单混合排序进一 步实现了 Java应用管理平台和OTA管理平台的独立管理,互不影响,同时OTA管理平台也 不需要进行技术升级,便于维护和升级。


图1是本发明生成USIM卡中菜单的方法的流程图;图2是本发明生成USIM卡中菜单的系统的结构图。
具体实施例方式下面结合附图,对本发明做进一步的详细描述。本发明的生成USIM卡中菜单的方法如图1所示。USIM卡中同时包括Java应用和 OTA应用,Java应用为具有菜单的电信应用。步骤S100,USIM卡依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中 为每个分组预留菜单入口项。USIM卡依据大类ID将OTA大类分组;USIM卡在Java的菜单入口列表中为每个 分组预留菜单入口项,所述每个菜单入口项包括状态、位置序号和菜单序号,初始化状态为 Disable (禁用),设置预留的菜单入口项的位置序号的范围。Disable表示禁止使用并不被 显不。一实施例USIM卡在预置Java应用,下载安装Java应用,或者添加任何OTA大类之前,要在 Java的菜单入口列表(Menu entries' List)中给OTA大类预留32个菜单入口项,菜单入 口项中状态为Disable,Position ID(位置序号)范围为1-32,Menu ID(菜单序号)不做 限制,可以由USIM卡提供商自定义,但是当有确定的OTA大类被添加的时候,分配的Menu ID不得与Java应用的Menu ID冲突。根据大类ID将OTA大类划分为四个分组,每分组对应8个Menu Entry (菜单入口 项),OTA大类和分组的对应关系为大类ID范围在0xl0-0x3F之间的OTA大类对应第一分 组,大类ID范围在0x50-0x7F之间的OTA大类对应第二分组,大类ID范围在0x90-0xBF之 间的OTA大类对应第三分组,大类ID范围在OxDO-OxFF之间的OTA大类对应第四分组。步骤S200,Java应用服务器接收并记录各个USIM卡中已有Java应用的信息以 及USIM卡中为OTA大类预留的菜单入口项的信息;根据记录的信息为Java应用计算位置 序号,使得Java应用被插入到OTA大类的分组间,并生成除位置序号外的其他安装参数,向 USIM卡下发包含安装参数的安装指令。
在进一步一个较佳的实施方案中,步骤S200还包括Java应用服务器为所管理的 每个Java应用分配表示Java应用菜单在终端显示顺序的位置优先级。步骤S200中为Java 应用计算位置序号进一步为,根据记录的信息和位置优先级为Java应用计算位置序号,使 得Java应用被插入到OTA大类的分组间,并且Java应用的排序同Java应用的菜单在终端 中显示的顺序一致。在进一步一个较佳的实施方案中,步骤S200还包括Java应用服务器记录每张 USIM卡可承载的未被锁定的最大Java应用个数Java应用服务器在准备发送Java应用下 载的安装指令或已有Java应用解锁的相关指令时,根据记录的信息判断作为发送对象的 USIM卡中已存在而未被锁定的Java应用个数是否已经达到USIM卡对应的最大Java应用 个数,如果是,则不进行发送,否则,发送该Java应用下载的安装指令或已有Java应用解锁 的相关指令。USIM卡接收到该Java应用下载的安装指令或已有Java应用解锁的相关指令 后,按该Java应用下载的安装指令或已有Java应用解锁的相关指令进行安装或对应解锁 的操作。在进一步一个较佳的实施方案中,步骤S200中生成除位置序号外的其他安装参 数进一步为依据Java应用规范生成菜单序号为00,以使USIM卡自行配置对应的菜单序号; 依据应用提供商提供的配置,生成除位置序号和菜单序号的其他安装参数。实施例中Java应用服务器记录每张USIM卡上已下载和已经预置的Java应用的信息,信息 中具体包含应用的AID (应用标识)和状态,以及USIM卡上已有的Java应用个数。Java应用服务器记录每张USIM卡片可承载的未被锁定的最大Java应用个数。该 参数根据各USIM卡片的批次不同而动态设置,具体举例中该参数的值为6。Java应用服务器给所管理的Java应用各自分配固定的、每个应用各不相同的 PPI (位置优先级),PPI表示应用下载到USIM卡片后显示菜单的先后顺序。具体的PPI越 小表示排序中的优先级越高。Java应用服务器根据PPI及已经为OTA大类预留的32个Position ID计算Java 应用的Position ID,计算的Position ID要满足如下条件,Java应用按照位置优先级在 USIM卡片排序,并且Java应用只插入到OTA大类所对应的四分组的Menu Entry组与Menu Entry组之间,而不能插在每分组内的两个Menu Entry之间。至于Java应用与OTA四分组 的Menu Entry的相对位置,由Java应用服务器根据业务需要确定,具体不做限制。Java应用安装参数中,Java应用服务器根据以上规则生成安装参数,具体要生成 的安装参数为Java应用规范中,80,tag下的数据(UICC Toolkit Application specific parameters),其中Menu ID为00,依据规范由USIM卡片自行分配Menu ID, Position ID 为根据上述的计算结果。其他安装参数由应用提供商提供,并上载到Java应用服务器,供 Java应用服务器下发安装指令时使用。Java应用服务器在给USIM卡片下发Java应用下载的安装指令或已有应用解锁的 相关指令之前,先要判断USIM卡片已有的且未锁定的Java应用个数是否已经达到USIM卡 片可承载的最大Java应用个数,如果已经相等,则不再给该USIM卡片发送该Java应用下 载的安装指令或已有应用解锁相关指令,如果没有达到,则下发该Java应用下载的安装指 令或已有应用解锁相关指令。
应用提供商要保证每个应用的名称不超过七个汉字(即指不包括0x80,菜单名称 长度不超过14个bytes),每个应用注册的菜单不能多于一个。步骤S300,OTA应用服务器依据OTA应用规范向USIM卡发送命令。步骤S400,USIM卡依据接收到的OTA大类的命令中的OTA大类ID判断所述命令 中OTA大类所属分组,在所述分组内对所述OTA大类进行对应操作,分组中OTA大类排列顺 序为大类ID从小到大的顺序,并且分组中OTA大类数量不超过预留的菜单入口项数量,对 应修改菜单入口列表中的菜单入口项,USIM卡依据接收到的Java应用的安装指令对Java 应用进行排序,根据安装指令中的位置序号将Java应用插入到相应分组间,对菜单入口列 表中状态为启用的菜单入口项按位置序号由小到大的顺序组织菜单建立命令,生成菜单。在较佳的实施方式中,在OTA大类的命令的操作为增加大类时,在分组内对所述 OTA大类进行对应操作进一步如下所述。步骤S410,依据OTA大类ID,将被增加的OTA大类和该OTA大类所属分组中的OTA 大类排序,确定被增加的OTA大类在分组中的位置。步骤S420,将被增加的OTA大类插入确定的位置,并依据OTA大类的命令修改被增 加的OTA大类对应Menu Entry的状态。其中,在OTA大类的命令指示增加的OTA大类禁用时,将对应Menu Entry的状态 修改为Disable ;在OTA大类的命令指示增加的OTA大类启用时,将对应Menu Entry的状 态修改为Enable。在较佳的实施方式中,USIM卡在进行增加操作前,判断增加OTA大类后,该OTA大 类所属分组中的OTA大类数量是否超出为分组预留的Menu Entry数量,如果是,则禁止增 加操作,否则,进行增加操作。在一较佳的实施方式中,在OTA大类的命令的操作为删除大类时,USIM卡将命令 指示被删除的OTA大类对应Menu Entry的状态修改为Disable。在一较佳的实施方式中,USIM卡在组织菜单建立命令时,判断菜单入口列表中所 有启用的Menu Entry相加,指令数据是否超过规定长度,如果是,则按位置序号从大到小的 顺序将超出的Menu Entry从菜单建立命令中除去。这里除去的菜单入口项不需要修改状态为Disable,只是不包含在菜单建立命令 中而已,因为如果包含的话指令会超长,另外如果刚好后续的其它菜单操作Disable或删 除了该菜单入口项之前的菜单入口项,在保证指令不超长的情况下,则该菜单入口项又会 包含在菜单建立命令中进行显示。在一较佳的实施方式中,在Menu Entry有变化时,USIM卡重新根据Menu Entry当 前状态构建菜单建立命令,并确保指令数据不超过规定长度。按位置序号从小到大的顺序,选择一定数量的Menu Entry,使得指令数据长度恰 不超出规定长度。
具体实施方式
如下所述。USIM卡依据接收的对于OTA大类的命令,进行对OTA大类的增加、删除、禁用、激 活、重命名操作,对菜单入口列表中预留的4个分组的总共32个Menu Entry进行管理。确 保在此组内,各OTA大类的大类ID与Position ID从小到大的顺序一致。状态Enable表示启用该Menu Entry,状态Disable表示禁用该Menu Entry。增加为增加OTA大类,对应Menu Entry状态修改为Enable ;删除为删除OTA大类,对应Menu Entry状态修改为Disable ;禁用为禁用OTA大类,对应Menu Entry状态修改为Disable ; 激活为激活OTA大类,对应Menu Entry状态修改为Enable ;重命名是修改该Menu Entry中 的菜单名称,修改菜单名称不改变Menu Entry的状态,并且保证该Menu Entry所在的分组 内的Menu Entry个数仍然是8个。当某个OTA大类被删除时,只Di sab 1 e其对应的Menu Entry项,而不能删除该Menu Entry项,以保证其所在的Menu Entry组的Menu Entry个数仍然是8个。USIM卡依据Java规范组织Setup Menu (菜单建立)指令时,Setup Menu指令中 的所有启动的Menu Entry由USIM卡片根据Position ID的顺序由小到大排列。USIM卡支持安装参数中Menu ID为00的情况下,自动分配Menu ID,确保USIM卡 上应用的Menu ID不冲突,具体举例中Java应用的Menu ID范围为0x80到0x8F,或者OxCO 到OxCF,其他范围属于OTA大类。USIM卡能够限制使得卡上预留给OTA的四组菜单入口列表中,每组添加的OTA大 类不超过8个,如果超过,该添加OTA大类操作不成功。如果USIM卡组织Setup Menu指令时,所有启动的Menu Entry加起来指令数据超 过255字节,则要求卡片不组织Position ID最大的Menu Entry在指令数据里,直到指令 数据小于255字节;如果某些Position ID较小的Menu Entry被删除,则原来不能显示的 Menu Entry在指令数据不超过255字节的情况下能够重新显示。验证本发明方法的实施例如下所述。步骤S201,OTA注册,计数器恢复初始状态,关闭PIN。步骤S202,修改 ICCID (卡片标识,Integrated Circuit Card Identity)此处修 改ICCID为某一特定值,是为了方便测试。步骤S203,模拟服务器修改一级菜单。步骤S204,模拟服务器修改品牌。步骤S205,模拟服务器将USIM卡中所有的OTA大类全部删除。步骤S206至步骤S213为测试JAVA菜单与OTA菜单的生成过程。步骤S206,下发OTA大类管理,将USIM卡中预置五个OTA大类。MENU ID、菜单名 称,以及对应的Position ID和状态分别如下所述。MENU ID 菜单名称 PositionID(范围) 状态15OTA 大类 15(1 8)Enable55OTA 大类 55(9 16)Enable95OTA 大类 95(17 24)EnableBOOTA 大类 BO(17 24)EnableD5OTA 大类 D5(25 32)Enable PositionID范围广8,9 16,17 24,25 32这四组位置ID预留给OTA菜单,其中仅 有OTA大类存在的项才启用Enable,其它的项处于禁用Disable状态,不是所有的ID都启 用,比如广8中,只有OTA大类15—个OTA菜单,所以广8中只有一个ID是启用的,不是这 一个组全部启用,该组中存在几个启用的OTA大类就启用几个位置ID,但是该组中同时启 用的位置个数不超过8个。以下的状态这一列中针对OTA大类菜单时都是如此。
13
步骤 S207,添加 PositionID为01,名称为JAVA应用1,添加后的菜单排序如下所述。
MENU ID菜单名称PositionID(范围)状态
80JAVA应用11Enable
15OTA大类15(2 9)Enable
55OTA大类55(10 17)Enable
95OTA大类95(18 25)Enable
BOOTA大类BO(18 25)Enable
D5OTA大类D5(26 33)Enable
步骤S208,添力口 PositionID为0Χ0Α (10),菜单名称为JAVA应用2,添加后菜单排序如下所述。
MENU ID菜单名称PositionID(范围)状态
80JAVA应用11Enable
15OTA大类15(2 9)Enable
81JAVA应用210Enable
55OTA大类55(11 18)Enable
95OTA大类95(19 26)Enable
BOOTA大类BO(19 26)Enable
D5OTA大类D5(27 34)Enable
步骤S209,添力口 PositionID为0X13 (19),菜单名称为JAVA应用3,添加后菜单排序如下所述。
MENU ID菜单名称PositionID(范围)状态
80JAVA应用11Enable
15OTA大类15(2 9)Enable
81JAVA应用210Enable
55OTA大类55(11 18)Enable
82JAVA应用319Enable
95OTA大类95(20 27)Enable
BOOTA大类BO(20 27)Enable
D5OTA大类D5(28 35)Enable
步骤S210,添力口 PositionID为OXlC (28),菜单名称为JAVA应用4,添加后菜单排序如下所述。
MENU ID菜单名称PositionID(范围)状态
80JAVA应用11Enable
15OTA大类15(2 9)Enable
81JAVA应用210Enable
55OTA大类55(11 18)Enable
82JAVA应用319Enable
95OTA大类95(20 27) 14 Enable
BOOTA大类BO(20 27)Enable
83JAVA应用428Enable
D5OTA大类D5(29 36)Enable
步骤 S211,添加 PositionID为0X25 (37),菜单名称为JAVA应用5,添加后菜单排序如下所述。
MENUID菜单名称PositionID(范围)状态
80JAVA应用11Enable
15OTA大类15(2 9)Enable
81JAVA应用210Enable
55OTA大类55(11 18)Enable
82JAVA应用319Enable
95OTA大类95(20 27)Enable
BOOTA大类BO(20 27)Enable
83JAVA应用428Enable
D5OTA大类D5(29 36)Enable
84JAVA应用537Enable
步骤S212,添加一个MENUID为A5的OTA大类A5,添加后菜单排序如下所述。
MENUID菜单名称PositionID(范围)状态
80JAVA应用11Enable
15OTA大类15(2 9)Enable
81JAVA应用210Enable
55OTA大类55(11 18)Enable
82JAVA应用319Enable
95OTA大类95(20 27)Enable
A5OTA大类A5(20 27)Enable
BOOTA大类BO(20 27)Enable
83JAVA应用428Enable
D5OTA大类D5(29 36)Enable
84JAVA应用537Enable
步骤S213,添力口 PositionID为0X01 (01),菜单名称为JAVA应用6,添加后菜单排序如下所述。
MENUID菜单名称PositionID(范围)状态
85JAVA应用61Enable
80JAVA应用12Enable
15OTA大类15(3 10)Enable
81JAVA应用211Enable
55OTA大类55(12 19)Enable
82JAVA应用320Enable
95OTA大类95(21 28)Enable
A5OTA大类A5(21 28)Enable
BOOTA大类BO(21 28)Enable
83JAVA应用429Enable
D5OTA大类D5(30 37)Enable
84JAVA应用538Enable
步骤S214至步骤S217测试删除Position ID较小的菜单入口项后在长度不超过
FF时原来不显示的菜单入口项能显示。 步骤S214 j^WPosition ID为0X02 (02),菜单名称为JAVA应用7,添加后菜单排 序如下所述。
0195]MENU ID菜单名称PositionID(范围)状态0196]85JAVA应用61Enable0197]86JAVA应用72Enable0198]80JAVA应用13Enable0199]15OTA大类15(rii)Enable0200]81JAVA应用212Enable0201]55OTA大类55(13 20)Enable0202]82JAVA应用321Enable0203]95OTA大类95(22 29)Enable0204]A5OTA大类A5(22 29)Enable0205]BOOTA大类BO(22 29)Enable0206]83JAVA应用430Enable0207]D5OTA大类D5(31 38)Enable0208]//84JAVA应用539(不显示)Enable这里的Java应用5,位置ID为39,它的菜单入口项状态是Enable,但是由于超长 而不被包含在菜单建立命令中进行显示。步骤S215,添加一个MENU ID为A7的OTA大类A7,和MENU ID为A8的OTA大类 A8,并将OTA大类A8禁用,添加后的菜单排序如下所述。
0211]MENU ID菜单名称PositionID(范围)状态0212]85JAVA应用61Enable0213]86JAVA应用72Enable0214]80JAVA应用13Enable0215]15OTA大类15(rii)Enable0216]81JAVA应用212Enable0217]55OTA大类55(13 20)Enable0218]82JAVA应用321Enable0219]95OTA大类95(22 29)Enable0220]A5OTA大类A5(22 29)Enable0221]A7OTA大类A7(22 29)Enable0222]//A8OTA大类A8(22 29)(禁用)Disable
16
BOOTA大类BO(22 29)Enable
83JAVA应用430Enable
//D5OTA大类D5(3广38)(不显示)Enable
//84JAVA应用539(不显示)Enable
Java应用5,位置ID为39,它的菜单入口项状态是Enable,但是由于超长而不被包含在菜单建立命令中进行显示;OTA大类D5对应的菜单入口项状态是Enable,但是由于超长,而不显示。
步骤 S216,删除 PositionID为0X15 (21),菜单名称为JAVA应用3的JAVA应用,删除后菜单排序如下所示。
MENU ID菜单名称PositionID(范围)状态
85JAVA应用61Enable
86JAVA应用72Enable
80JAVA应用13Enable
15OTA大类15(rii)Enable
81JAVA应用212Enable
55OTA大类55(13 20)Enable
95OTA大类95(21 28)Enable
A5OTA大类A5(21 28)Enable
A7OTA大类A7(21 28)Enable
"A8OTA大类A8(2广28)(禁用)Disable
BOOTA大类BO(21 28)Enable
83JAVA应用429Enable
D5OTA大类D5(30 37)(显示)Enable
//84JAVA应用538(不显示)Enable
步骤S217,禁用一个MENUID为15的OTA大类15,并添加一个菜单长度为00的92大类后,菜单排序为
MENU ID菜单名称PositionID(范围)状态
85JAVA应用61Enable
86JAVA应用72Enable
80JAVA应用13Enable
"15OTA大类15(Γ11)(禁用)Disable
81JAVA应用212Enable
55OTA大类55(13 20)Enable
92(21 28)Enable
95OTA大类95(21 28)Enable
A5OTA大类A5(21 28)Enable
A7OTA大类A7(21 28)Enable
"A8OTA大类A8(2广28)(禁用)Disable
BOOTA大类BO(21 28)Enable
55OTA 大类 55 (11 18)Enable92(19 26)Enable95OTA 大类 95 (19 26)Enable96OTA 大类 96 (19 26)EnableAOOTA 大类 AO (19 26)EnableA5OTA 大类 A5 (19 26)EnableA7OTA 大类 A7 (19 26)Enable//A8OTA 大类 A8 (19 26)(禁用)DisableBOOTA 大类 BO (19 26)EnableD5OTA 大类 D5 (27 34)Enable本发明生成USIM卡中菜单的系统如图2所示。USIM卡中包括Java应用和OTA应用,Java应用具有菜单,其特征在于,系统包括 USIM卡100、Java应用服务器200、和OTA应用服务器300。USIM卡100,用于依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中为 每个分组预留菜单入口项。Java应用服务器200,用于接收并记录各个USIM卡100中已有Java应用的信息 以及USIM卡100中为OTA大类预留菜单入口项的信息;根据记录的信息为Java应用计算 位置序号,以使Java应用被插入到OTA大类的分组间,并生成除位置序号外的其他安装参 数,向USIM卡100下发包含安装参数的安装指令。OTA应用服务器300,用于依据OTA应用规范向USIM卡100发送命令。USIM卡100还用于依据接收到的OTA大类的命令中的OTA大类ID判断命令中OTA 大类所属分组,在分组内对OTA大类进行对应操作,分组中OTA大类排列顺序为大类ID从 小到大的顺序,并且分组中OTA大类数量不超过预留的菜单入口项数量,对应修改菜单入 口列表中的菜单入口项;依据接收到的Java应用的安装指令对Java应用进行排序,根据安 装指令中的位置序号将Java应用插入到相应分组间;对菜单入口列表中状态为启用的菜 单入口项按位置序号由小到大的顺序组织菜单建立命令,生成菜单。在一优选的实施方式中,USIM卡在依据OTA大类ID将OTA大类分组,在Java的 菜单入口列表中为每个分组预留菜单入口项时进一步用于依据大类ID将OTA大类分组;在 Java的菜单入口列表中为每个分组预留菜单入口项,每个菜单入口项包括状态、位置序号 和菜单序号,初始化状态为禁用,设置预留菜单入口项的位置序号的范围。在一优选的实施方式中,Java应用服务器还用于为所管理的每个Java应用分配 表示Java应用菜单在终端显示顺序的位置优先级。Java应用服务器在为Java应用计算位置序号时进一步用于根据记录的信息和位 置优先级为Java应用计算位置序号,使得Java应用被插入到OTA大类的分组间,并且Java 应用的排序同Java应用的菜单在终端中显示的顺序一致。在一优选的实施方式中,Java应用服务器还用于记录每张USIM卡可承载的未被 锁定的最大Java应用个数;在准备发送Java应用下载的安装指令或已有Java应用解锁的 相关指令时,根据记录的信息判断作为发送对象的USIM卡中已存在而未被锁定的Java应 用个数是否已经达到USIM卡对应的最大Java应用个数,如果是,则不进行发送,否则,发送
19安装指令或解锁的相关指令。USIM卡还用于接收到解锁的相关指令后,按指令进行对应解锁操作。在一优选的实施方式中,Java应用服务器在生成除位置序号外的其他安装参数时 进一步用于依据Java应用规范生成菜单序号为00,以使USIM卡自行配置对应的菜单序号; 依据应用提供商提供的配置,生成除位置序号和菜单序号的其他安装参数。在一优选的实施方式中,在OTA大类的命令的操作为增加大类时,USIM卡在分组 内对OTA大类进行对应操作时进一步用于依据OTA大类ID,将被增加的OTA大类和所属分 组中的OTA大类排序,确定被增加的OTA大类在分组中的位置;将被增加的OTA大类插入该 位置,并依据命令修改对应菜单入口项的状态。在一优选的实施方式中,USIM卡在确定被增加的OTA大类在分组中的位置前还用 于判断增加该OTA大类后,所属分组中的OTA大类数量是否超出为分组预留的菜单入口项 数量,如果是,则禁止该增加操作,否则,进行确定该被增加的OTA大类在分组中的位置的 操作。在一优选的实施方式中,在OTA大类的命令的操作为删除大类时,USIM卡在所在
分组内对OTA大类进行对应操作时进一步用于将该OTA大类对应菜单入口项的状态修改为
ttffl 不 Ztd ο在一优选的实施方式中,USIM卡在组织菜单建立命令时进一步用于判断所有启用 的菜单入口项相加,指令数据是否超过规定长度,如果是,则按位置序号从大到小的顺序将 超出的菜单入口项从菜单建立命令中除去。进一步较佳的实施方式中,在有菜单入口项发生变化时,USIM卡还用于重新根据 菜单入口项当前状态构建菜单建立命令,并确保指令数据不超过规定长度。本领域的技术人员在不脱离权利要求书确定的本发明的精神和范围的条件下,还 可以对以上内容进行各种各样的修改。因此本发明的范围并不仅限于以上的说明,而是由 权利要求书的范围来确定的。
权利要求
一种生成USIM卡中菜单的方法,USIM卡中包括Java应用和OTA应用,所述Java应用具有菜单,其特征在于,所述方法包括步骤1,USIM卡依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中为每个分组预留菜单入口项;步骤2,Java应用服务器接收并记录各个USIM卡中已有Java应用的信息以及所述USIM卡中为OTA大类预留菜单入口项的信息;根据所述记录的信息为Java应用计算位置序号,以使Java应用被插入到OTA大类的分组间,并生成除位置序号外的其他安装参数,向USIM卡下发包含安装参数的安装指令;步骤3,OTA应用服务器依据OTA应用规范向USIM卡发送命令;步骤4,USIM卡依据接收到的OTA大类的命令中的OTA大类ID判断所述命令中OTA大类所属分组,在所述分组内对所述OTA大类进行对应操作,分组中OTA大类排列顺序为大类ID从小到大的顺序,并且分组中OTA大类数量不超过预留的菜单入口项数量,对应修改菜单入口列表中的菜单入口项;USIM卡依据接收到的Java应用的安装指令对Java应用进行排序,根据安装指令中的位置序号将Java应用插入到相应分组间;对菜单入口列表中状态为启用的菜单入口项按位置序号由小到大的顺序组织菜单建立命令,生成菜单。
2.如权利要求1所述的生成USIM卡中菜单的方法,其特征在于, 所述步骤1进一步为,步骤21,USIM卡依据大类ID将OTA大类分组;步骤22,USIM卡在Java的菜单入口列表中为每个分组预留菜单入口项,所述每个菜单 入口项包括状态、位置序号和菜单序号,初始化状态为禁用,设置预留菜单入口项的位置序 号的范围。
3.如权利要求1所述的生成USIM卡中菜单的方法,其特征在于, 所述步骤2还包括步骤31,Java应用服务器为所管理的每个Java应用分配表示Java应用菜单在终端显 示顺序的位置优先级;所述步骤2中为Java应用计算位置序号进一步为,步骤32,根据所述记录的信息和所述位置优先级为Java应用计算位置序号,使得Java 应用被插入到OTA大类的分组间,并且Java应用的排序同Java应用的菜单在终端中显示 的顺序一致。
4.如权利要求1所述的生成USIM卡中菜单的方法,其特征在于, 所述步骤2还包括步骤41,Java应用服务器记录每张USIM卡可承载的未被锁定的最大Java应用个数; 步骤42,Java应用服务器在准备发送Java应用下载的安装指令或已有Java应用解锁 的相关指令时,根据记录的信息判断作为发送对象的USIM卡中已存在而未被锁定的Java 应用个数是否已经达到所述USIM卡对应的最大Java应用个数,如果是,则不进行发送,否 则,发送所述安装指令或所述相关指令; 所述步骤4还包括,步骤43,USIM卡接收到所述解锁的相关指令后,按所述指令进行对应解锁操作。
5.如权利要求1所述的生成USIM卡中菜单的方法,其特征在于,的其他安装参数进一步为,步骤51,依据Java应用规范生成菜单序号为00,以使USIM卡自行配置对应的菜单序号;步骤52,依据应用提供商提供的配置,生成除位置序号和菜单序号的其他安装参数。
6.如权利要求1所述的生成USIM卡中菜单的方法,其特征在于,在所述OTA大类的命令的操作为增加大类时,所述步骤4中在所述分组内对所述OTA 大类进行对应操作进一步为,步骤61,依据OTA大类ID,将被增加的OTA大类和所属分组中的OTA大类排序,确定所 述被增加的OTA大类在分组中的位置;步骤62,将所述被增加的OTA大类插入所述位置,并依据命令修改对应菜单入口项的 状态。
7.如权利要求6所述的生成USIM卡中菜单的方法,其特征在于,所述步骤61前还包括步骤71,判断增加所述OTA大类后,所述分组中的OTA大类数量是否超出为分组预留的 菜单入口项数量,如果是,则禁止所述增加操作,否则,执行步骤61。
8.如权利要求1所述的生成USIM卡中菜单的方法,其特征在于,在所述OTA大类的命令的操作为删除大类时,所述步骤4中在所述分组内对所述OTA 大类进行对应操作进一步为,步骤81,将所述OTA大类对应菜单入口项的状态修改为禁用。
9.如权利要求1所述的生成USIM卡中菜单的方法,其特征在于,所述步骤4中组织菜单建立命令时,判断所有启用的菜单入口项相加,指令数据是否 超过规定长度,如果是,则按位置序号从大到小的顺序将超出的菜单入口项从菜单建立命 令中除去。
10.如权利要求9所述的生成USIM卡中菜单的方法,其特征在于,在菜单入口项变化时,所述步骤4还包括,重新根据菜单入口项当前状态构建菜单建 立命令,并确保指令数据不超过规定长度。
11.一种生成USIM卡中菜单的系统,USIM卡中包括Java应用和OTA应用,所述Java 应用具有菜单,其特征在于,所述系统包括USIM卡、Java应用服务器、和OTA应用服务器,所述USIM卡,用于依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中为每 个分组预留菜单入口项;所述Java应用服务器,用于接收并记录各个USIM卡中已有Java应用的信息以及所述 USIM卡中为OTA大类预留菜单入口项的信息;根据所述记录的信息为Java应用计算位置 序号,以使Java应用被插入到OTA大类的分组间,并生成除位置序号外的其他安装参数,向 USIM卡下发包含安装参数的安装指令;所述OTA应用服务器,用于依据OTA应用规范向USIM卡发送命令; 所述USIM卡还用于依据接收到的OTA大类的命令中的OTA大类ID判断所述命令中 OTA大类所属分组,在所述分组内对所述OTA大类进行对应操作,分组中OTA大类排列顺序 为大类ID从小到大的顺序,并且分组中OTA大类数量不超过预留的菜单入口项数量,对应 修改菜单入口列表中的菜单入口项;依据接收到的Java应用的安装指令对Java应用进行排序,根据安装指令中的位置序号将Java应用插入到相应分组间;对菜单入口列表中状态 为启用的菜单入口项按位置序号由小到大的顺序组织菜单建立命令,生成菜单。
12.如权利要求11所述的生成USIM卡中菜单的系统,其特征在于,所述USIM卡在依据OTA大类ID将OTA大类分组,在Java的菜单入口列表中为每个分 组预留菜单入口项时进一步用于依据大类ID将OTA大类分组;在Java的菜单入口列表中为每个分组预留菜单入口项,所述每个菜单入口项包括状 态、位置序号和菜单序号,初始化状态为禁用,设置预留菜单入口项的位置序号的范围。
13.如权利要求11所述的生成USIM卡中菜单的系统,其特征在于,所述Java应用服务器还用于为所管理的每个Java应用分配表示Java应用菜单在终 端显示顺序的位置优先级;所述Java应用服务器在为Java应用计算位置序号时进一步用于根据所述记录的信息 和所述位置优先级为Java应用计算位置序号,使得Java应用被插入到OTA大类的分组间, 并且Java应用的排序同Java应用的菜单在终端中显示的顺序一致。
14.如权利要求11所述的生成USIM卡中菜单的系统,其特征在于,所述Java应用服务器还用于记录每张USIM卡可承载的未被锁定的最大Java应用个 数;在准备发送Java应用下载的安装指令或已有Java应用解锁的相关指令时,根据记录的 信息判断作为发送对象的USIM卡中已存在而未被锁定的Java应用个数是否已经达到所述 USIM卡对应的最大Java应用个数,如果是,则不进行发送,否则,发送所述安装指令或所述 相关指令;所述USIM卡还用于接收到所述解锁的相关指令后,按所述指令进行对应解锁操作。
15.如权利要求11所述的生成USIM卡中菜单的系统,其特征在于,所述Java应用服务器在生成除位置序号外的其他安装参数时进一步用于依据Java应 用规范生成菜单序号为00,以使USIM卡自行配置对应的菜单序号;依据应用提供商提供的 配置,生成除位置序号和菜单序号的其他安装参数。
16.如权利要求11所述的生成USIM卡中菜单的系统,其特征在于,在所述OTA大类的命令的操作为增加大类时,所述USIM卡在所述分组内对所述OTA大 类进行对应操作时进一步用于依据OTA大类ID,将被增加的OTA大类和所属分组中的OTA大类排序,确定所述被增加 的OTA大类在分组中的位置;将所述被增加的OTA大类插入所述位置,并依据命令修改对应菜单入口项的状态。
17.如权利要求16所述的生成USIM卡中菜单的系统,其特征在于,所述USIM卡在确定 所述被增加的OTA大类在分组中的位置前还用于判断增加所述OTA大类后,所述分组中的 OTA大类数量是否超出为分组预留的菜单入口项数量,如果是,则禁止所述增加操作,否则, 进行所述确定所述被增加的OTA大类在分组中的位置。
18.如权利要求11所述的生成USIM卡中菜单的系统,其特征在于,在所述OTA大类的命令的操作为删除大类时,所述USIM卡在所述分组内对所述OTA大 类进行对应操作时进一步用于将所述OTA大类对应菜单入口项的状态修改为禁用。
19.如权利要求11所述的生成USIM卡中菜单的系统,其特征在于,所述USIM卡在组织菜单建立命令时进一步用于判断所有启用的菜单入口项相加,指 令数据是否超过规定长度,如果是,则按位置序号从大到小的顺序将超出的菜单入口项从 菜单建立命令中除去。
20.如权利要求19所述的生成USIM卡中菜单的系统,其特征在于, 在菜单入口项变化时,所述USIM卡还用于重新根据菜单入口项当前状态构建菜单建 立命令,并确保指令数据不超过规定长度。
全文摘要
本发明涉及生成USIM卡中菜单的方法和系统,方法包括步骤1,USIM卡依据OTA大类ID分组,为每个分组预留菜单入口项;步骤2,Java应用服务器为Java应用计算位置序号,向USIM卡安装指令;步骤3,OTA应用服务器依据OTA应用规范向USIM卡发送命令;步骤4,USIM卡依据接收到的命令中的OTA大类ID判断命令中OTA大类所属分组,在分组内对OTA大类进行对应操作,依据接收到的Java应用的安装指令中的位置序号将Java应用插入到相应分组间;对菜单入口列表中状态为启用的菜单入口项组织菜单建立命令,生成菜单。本发明能够在USIM卡中完成对Java应用菜单和OTA应用菜单的相互兼容。
文档编号G06F9/44GK101916191SQ20101026219
公开日2010年12月15日 申请日期2010年8月24日 优先权日2010年8月24日
发明者刘光辉, 宫洁琳, 李笑郁, 杨可可, 金明晔 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1