一种优化的手机电话本数据访问方法

文档序号:7662993阅读:223来源:国知局
专利名称:一种优化的手机电话本数据访问方法
技术领域
本发明涉及提高在手机上电话本数据访问速度的方法。
背景技术
电话本是手机的基本应用之一,目前手机电话本应用的数据量越来越 大,存储的信息也越来越多。电话本的速度问题也越来越作为手机易用性的 一个重要指标,直接关系到手机用户的体验。
目前手机的电话本在数据量非常大的时候,访问速度都不是很理想。为 了提高电话本的访问速度,就需要占用很大的内存,由于手机系统的内存资 源有限,所以此方法效果不是很好。所以需要提供一种方便有效的方法,提 高手机电话本的数据访问速度,并且要求对系统资源花费要尽量的小。
目前通常采用的方法有"数据用数据库存储解决方案"和"将数据全部
放在内存区方案,,。在低端手机上,用数据库作为数据存储,对系统CPU 和RAM要求都比较高;如果采用"将数据全部放在内存区方案",因为目 前手机的电话本数据非常多,所以此方案对手机系统的内存要求非常大。
综上所述,现有技术的缺点主要有两个 一是对CPU要求非常高,不 具备通用性;二是需要大的内存空间。因此需要对现有技术进行改进,提高 手机电话本数据的访问速度。

发明内容
本发明要解决的技术问题是提供一种提高手机电话本数据访问速度的 方法,解决现有手机电话本数据访问方法对CPU要求高,占用大量内存的 缺点。为了解决上述技术问题,本发明提供了一种优化的手机电话本数据访问
方法,包含如下步骤
(a) 定义数据单元,每个数据单元大小固定,对应一个编号,将电话 本数据存储在所述数据单元中;
(b) 在访问电话本数据时,建立访问结构数组,根据筛选条件对数据 单元进行筛选,将选中的数据单元的编号存入所述访问结构数组,即所述访 问结构数组的数据为数据单元的编号;
(c) 将所述访问结构数组中满足显示条件的编号对应的数据单元的电 话本数据加载入内存中,进行显示。
进一步地,上述方法还可具有以下特点,所述数据单元包含电话本数据 的全部字段信息,每个字段的大小固定。
进一步地,上述方法还可具有以下特点,所述步骤(b)中,所述筛选 条件为电话本查询条件或排序条件。
进一步地,上述方法还可具有以下特点,所述步骤(b)中,对凄i:据单 元进行筛选时,根据编号读取数据单元存储的电话本数据进行筛选。
进一步地,上述方法还可具有以下特点,根据所述编号加载或读取所述 数据单元时,从数据首地址加上数据单元大小与数据单元编号的乘积的位置 读取所述数据单元的电话本数据,其中数据首地址是指存储电话本数据的首 地址。
进一步地,上述方法还可具有以下特点,所述访问结构数组的位置指针 指向当前满足显示条件的第 一 个数据单元的编号。
进一步地,上述方法还可具有以下特点,所述屏幕显示从所述位置指针 开始的访问结构数组中的连续N个数据编号对应的数据单元的电话本数据, N为屏幕能显示的最大数据单元个数或为用户指定屏幕显示的数据单元个数。
进一步地,上述方法还可具有以下特点,当篩选条件不变时,如果屏幕 显示的数据发生变化,只更新内存里没有的数据,同时将内存里的数据根据 电话本数据单元访问结构数组的编号顺序,进行相应的移动,重新排列内存 里的数据。进一步地,上述方法还可具有以下特点,所述筛选条件变化时,重新4丸 行步骤(b),建立新的访问结构数组。
采用本发明所述方法,与现有技术和方法相比,由于采取了 "结构化存 储数据单元+构建数据单元速查表,,的技术措施,使得在有无较大存储空 间和内存环境下均实现了高速、方便有效的电话本访问速度,极大地提高了 手机电话本应用的用户体验。所述方法具有适用范围广、资源消耗低和实用 性强的特点。整个过程可实现性强,适合于绝大多数手机电话本应用,非常 适合推广。


图1是电话本数据单元结构化存储示意图; 图2是电话本数据单元访问结构数组示意图; 图3是电话本数据访问过程示意图。
具体实施例方式
下面结合附图对本发明技术方案的实施作进一步的详细描述。
图1所示为本发明电话本数据单元结构化存储示意图。该存储方式是为 了保证数据能够快速的装载进内存而设计的一种存储方式。全部的电话本数 据单元存储在文件中。
每个电话本数据单元大小固定,包含电话本记录的全部字段信息。这些
字段信息按照次序进行存储;每个记录的数据按照固定数据字段大小进行存
储(如姓名字段设定为N字节);数据单元的存储形式与其在内存中的空 间布局情况一致。
图2所示为电话本数据单元访问结构数组关系示意图。 在手机屏幕上,显示的数据单元个数是有限的,将所有满足显示条件的
电话本数据单元的编号用数组存储起来,因为数据单元大小固定,所以根据
单元编号可以得到该数据单元的全部信息。
手机显示屏幕的第 一个数据单元与数据单元访问结构数组的当前数据单元位置对应,即与数据单元访问结构数组位置指针指向的数据单元对应,
后面依次是数组中位置指针后的第2个、第3个,......。如果屏幕滚动或者
数据变化,那么位置指针也就移动到对应位置。
图3所示为电话本数据访问过程。
第一步分配屏幕显示记录的内存空间。如果屏幕需要显示N个数据 单元,那么需要分配"N*数据单元大小"的内存空间。此内存空间大小固 定,可以反复使用,用来装载满足显示条件的当前屏幕中的电话本数据。
分配内存时也可以根据用户需要来分配。例如用户有时候需要显示5个 号码,有时候想显示2个号码,此时可以改变内存空间的大小。
第二步电话本应用根据筛选条件,如设置的查询条件或者排序条件, 对依次显示的数据进行选择。如果第n个数据单元满足可以显示条件(即满 足上述筛选条件),那么将第n个数据单元的编号放在电话本数据单元访问 结构数组中,否则丟弃。数据篩选过程中,因为数据单元按照固定大小存储, 所以只需要根据筛选条件读取数据单元的对应数据(数据位置+数据单元 大小 *数据单元编号,数据位置是指在RAM中存储电话本数据的首地 址),查看是否满足条件,省去了装载全部数据的时间和内存。
第三步将电话本数据单元访问结构数组中的数据编号对应的数据装载 到内存中。从指针位置开始,将电话本数据单元访问结构数组的前N个数 据编号对应的数据单元读到第一步分配的内存中,其中N表示屏幕可以显 示N个数据单元,或者表示用户要求在屏幕上显示的数据单元个数。
第四步将数据显示在手机屏幕上。
第五步当屏幕数显示的据发生变化时(屏幕滚动或者拖动滚动条), 重复第三步。
此步骤可以对数据装载进行优化,如果屏幕显示的数据发生变化,但是 有部分数据和当前屏幕数据是重复的,那么只需要更新内存里没有的数据, 同时将内存里的数据根据电话本数据单元访问结构数组的编号顺序,进行合 适的移动,重新排列。因为每个数据单元的大小是固定的,编号顺序发生变 化后,可以根据编号计算出数据单元在内存中的新位置,在内存中移动数据单元到新的位置。
第六步如果电话本筛选条件,如应用查询条件或者排序条件,发生变
化,重复第二步,建立新的访问结构数组。 .
权利要求
1、一种优化的手机电话本数据访问方法,包含如下步骤(a)定义数据单元,每个数据单元大小固定,对应一个编号,将电话本数据存储在所述数据单元中;(b)在访问电话本数据时,建立访问结构数组,根据筛选条件对数据单元进行筛选,将选中的数据单元的编号存入所述访问结构数组,即所述访问结构数组的数据为数据单元的编号;(c)将所述访问结构数组中满足显示条件的编号对应的数据单元的电话本数据加载入内存中,进行显示。
2、 如权利要求1所述的方法,其特征在于,所述数据单元包含电话本 数据的全部字段信息,每个字段的大小固定。
3、 如权利要求1或2所述的方法,其特征在于,所述步骤(b)中,所 述筛选条件为电话本查询条件或排序条件。
4、 如权利要求l所述的方法,其特征在于,所述步骤(b)中,对数据 单元进行筛选时,根据编号读取数据单元存储的电话本数据进行筛选。
5、 如权利要求1或2或4所述的方法,其特征在于,根据所述编号加 载或读取所述数据单元时,从数据首地址加上数据单元大小与数据单元编号的乘积的位置读取所述数据单元的电话本数据,其中数据首地址是指存储电 话本数据的首地址。
6、 如权利要求1所述的方法,其特征在于,所述访问结构数组的位置 指针指向当前满足显示条件的第 一个数据单元的编号。
7、 如权利要求1或6所述的方法,其特征在于,所述屏幕显示从所述 位置指针开始的访问结构数组中的连续N个数据编号对应的数据单元的电 话本数据,N为屏幕能显示的最大数据单元个数或为用户指定屏幕显示的数 据单元个数。
8、 如权利要求l所述的方法,其特征在于,当筛选条件不变时,如果 屏幕显示的数据发生变化,只更新内存里没有的数据,同时将内存里的数据根据电话本数据单元访问结构数组的编号顺序,进行相应的移动,重新排列 内存里的数据。
9、如权利要求1或2所述的方法,其特征在于,所述筛选条件变化时, 重新执行步骤(b),建立新的访问结构数组。
全文摘要
本发明提供了一种优化的手机电话本数据访问方法,包含如下步骤(a)定义数据单元,每个数据单元大小固定,对应一个编号,将电话本数据存储在所述数据单元中;(b)在访问电话本数据时,建立访问结构数组,根据筛选条件对数据单元进行筛选,将选中的数据单元的编号存入所述访问结构数组,即所述访问结构数组的数据为数据单元的编号;(c)将所述访问结构数组中满足显示条件的编号对应的数据单元的电话本数据加载入内存中,进行显示。采用本发明所述方法,与现有技术和方法相比,由于采取了“结构化存储数据单元+构建数据单元速查表”的技术措施,使得在有无较大存储空间和内存环境下均实现了高速、方便有效的电话本访问速度。
文档编号H04M1/2745GK101409739SQ200710164040
公开日2009年4月15日 申请日期2007年10月12日 优先权日2007年10月12日
发明者飞 鞠 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1