CN104281472A - 一种资源预加载方法和装置 - Google Patents
一种资源预加载方法和装置 Download PDFInfo
- Publication number
- CN104281472A CN104281472A CN201410480163.4A CN201410480163A CN104281472A CN 104281472 A CN104281472 A CN 104281472A CN 201410480163 A CN201410480163 A CN 201410480163A CN 104281472 A CN104281472 A CN 104281472A
- Authority
- CN
- China
- Prior art keywords
- control object
- launched
- control
- display resource
- described control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 123
- 230000008569 process Effects 0.000 claims abstract description 75
- 238000004321 preservation Methods 0.000 claims description 14
- 230000008878 coupling Effects 0.000 claims description 9
- 238000010168 coupling process Methods 0.000 claims description 9
- 238000005859 coupling reaction Methods 0.000 claims description 9
- 230000036316 preload Effects 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 9
- 230000008901 benefit Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种资源预加载方法和装置,以解决目前针对应用的软件功能进行裁剪的方法通用性较差,处理过程复杂,可能导致应用的运行出现错误的问题。其中,方法包括:接收针对已启动控件对象的操作信息;根据操作信息确定待启动控件对象,及待启动控件对象对应的显示资源;将待启动控件对象对应的显示资源保存至缓存中;在接收到针对待启动控件对象的启动指令后,从缓存中加载该待启动控件对象对应的显示资源。本发明能够加快控件对象的启动速度,提升用户体验,并且不需要针对控件对象的软件功能进行裁剪,通用性强,处理过程简单,控件对象的运行过程流畅。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种资源预加载方法和装置。
背景技术
随着智能终端的不断发展,许多应用都为其自身提供了用于安装在终端上的客户端程序。对于提供客户端程序的应用,首先被下载并安装到终端上,然后通过客户端与服务器之间的信息交互,用户可以在终端上实现对应用的使用和体验。
然而,随着终端上安装的应用的数量越来越多,这些应用所占用的终端内存也越来越多,导致应用的启动速度和启动流畅性也会降低,尤其在低端硬件配置的终端上表现更为突出,从而极大地降低了用户体验。
针对上述问题,目前普遍的解决方案是针对应用的软件功能进行裁剪,例如,删除应用的某些重要性较低的资源以降低内存占用量,或者,删除对应用的启动速度影响较大的功能逻辑以提高启动速度。
但是,上述解决方案会导致不同终端产品下同一应用的用户体验不一致,通用性较差,并且处理过程复杂,可能导致应用的运行出现错误。
发明内容
本发明提供了一种资源预加载方法和装置,以解决目前针对应用的软件功能进行裁剪的方法通用性较差,处理过程复杂,可能导致应用的运行出现错误的问题。
为了解决上述问题,本发明公开了一种资源预加载方法,其特征在于,包括:
接收针对已启动控件对象的操作信息;
根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源;
将所述待启动控件对象对应的显示资源保存至缓存中;
在接收到针对所述待启动控件对象的启动指令后,从所述缓存中加载该待启动控件对象对应的显示资源。
优选地,所述根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源的步骤包括:
从所述操作信息中获取已点击控件对象的控件ID,并获取目标控件对象的控件ID;其中,所述已点击控件对象和目标控件对象为所述已启动控件对象的用户界面中的控件对象;
将所述已点击控件对象的控件ID按照点击顺序进行排序,将排序后的控件ID与所述目标控件对象的控件ID组合成控件ID序列;
从预先设置的资源加载列表中查找与所述控件ID序列相匹配的条目;所述资源加载列表包括至少一个条目,每个条目包括控件ID序列,以及所述控件ID序列对应的控件对象信息和所述控件对象对应的显示资源信息;
将所述条目中包括的控件对象信息所指示的控件对象确定为待启动控件对象,将所述显示资源信息所指示的显示资源确定为待启动控件对象对应的显示资源。
优选地,所述获取目标控件对象的控件ID的步骤包括:
在点击目标控件对象之后,从操作信息中获取所述目标控件对象的控件ID。
优选地,所述操作信息为采用电容式触摸屏输入的信息,
所述获取目标控件对象的控件ID的步骤包括:
检测触摸体与电容式触摸屏之间形成的耦合电容的电容值的变化趋势;
当检测到某一位置的电容值大于预设阈值时,确定该位置处的控件对象为目标控件对象,确定该位置处的控件ID为目标控件对象的控件ID。
优选地,在所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤之前,还包括:
获取预先设置的进程关系,根据所述进程关系判定所述待启动控件对象与所述已启动控件对象是否运行在同一进程。
优选地,所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤包括:
如果所述待启动控件对象与所述已启动控件对象运行在同一进程,则从磁盘中读取所述待启动控件对象对应的显示资源,将所述显示资源保存至所述已启动控件对象的进程对应的缓存中;
如果所述待启动控件对象与所述已启动控件对象运行在不同进程,则从磁盘中读取所述待启动控件对象对应的显示资源,并从后台启动所述待启动控件对象的进程,将所述显示资源保存至所述待启动控件对象的进程对应的缓存中。
优选地,所述已启动控件对象为应用或者应用中的组件,所述待启动控件对象为应用或者应用中的组件。
优选地,在所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤之前,还包括:
判断所述待启动控件对象对应的显示资源是否已经保存在缓存中;
若否,则执行所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤。
根据本发明的另一方面,还公开了一种资源预加载装置,其特征在于,包括:
接收模块,用于接收针对已启动控件对象的操作信息;
确定模块,用于根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源;
保存模块,用于将所述待启动控件对象对应的显示资源保存至缓存中;
加载模块,用于在接收到针对所述待启动控件对象的启动指令后,从所述缓存中加载该待启动控件对象对应的显示资源。
优选地,所述确定模块包括:
获取子模块,用于从所述操作信息中获取已点击控件对象的控件ID,并获取目标控件对象的控件ID;其中,所述已点击控件对象和目标控件对象为所述已启动控件对象的用户界面中的控件对象;
组合子模块,用于将所述已点击控件对象的控件ID按照点击顺序进行排序,将排序后的控件ID与所述目标控件对象的控件ID组合成控件ID序列;
查找子模块,用于从预先设置的资源加载列表中查找与所述控件ID序列相匹配的条目;所述资源加载列表包括至少一个条目,每个条目包括控件ID序列,以及所述控件ID序列对应的控件对象信息和所述控件对象对应的显示资源信息;
确定子模块,用于将所述条目中包括的控件对象信息所指示的控件对象确定为待启动控件对象,将所述显示资源信息所指示的显示资源确定为待启动控件对象对应的显示资源。
优选地,所述获取子模块,具体用于在点击目标控件对象之后,从操作信息中获取所述目标控件对象的控件ID。
优选地,所述操作信息为采用电容式触摸屏输入的信息,
所述获取子模块,具体用于检测触摸体与电容式触摸屏之间形成的耦合电容的电容值的变化趋势;当检测到某一位置的电容值大于预设阈值时,确定该位置处的控件对象为目标控件对象,确定该位置处的控件ID为目标控件对象的控件ID。
优选地,所述装置还包括:
判定模块,用于在所述保存模块将所述待启动控件对象对应的显示资源保存至缓存中之前,获取预先设置的进程关系,根据所述进程关系判定所述待启动控件对象与所述已启动控件对象是否运行在同一进程。
优选地,所述保存模块包括:
第一保存子模块,用于在所述判定模块判定出所述待启动控件对象与所述已启动控件对象运行在同一进程时,从磁盘中读取所述待启动控件对象对应的显示资源,将所述显示资源保存至所述已启动控件对象的进程对应的缓存中;
第二保存子模块,用于在在所述判定模块判定出所述待启动控件对象与所述已启动控件对象运行在不同进程时,从磁盘中读取所述待启动控件对象对应的显示资源,并从后台启动所述待启动控件对象的进程,将所述显示资源保存至所述待启动控件对象的进程对应的缓存中。
优选地,所述已启动控件对象为应用或者应用中的组件,所述待启动控件对象为应用或者应用中的组件。
优选地,所述装置还包括:
判断模块,用于在所述保存模块将所述待启动控件对象对应的显示资源保存至缓存中之前,判断所述待启动控件对象对应的显示资源是否已经保存在缓存中;若否,则调用所述保存模块。
与现有技术相比,本发明包括以下优点:
本发明中首先可以接收针对已启动控件对象的操作信息,然后根据该操作信息确定待启动控件对象,及待启动控件对象对应的显示资源,并将待启动控件对象对应的显示资源保存至缓存中,最后在接收到针对上述待启动控件对象的启动指令后,从缓存中加载该待启动控件对象对应的显示资源。由于在运行当前已启动控件时,即可将后续待启动控件对象对应的显示资源预先保存至缓存中,因此在启动该待启动控件对象时即可直接从缓存中加载对应的显示资源,从而加快控件对象的启动速度,提升用户体验,该方法不需要针对控件对象的软件功能进行裁剪,通用性强,处理过程简单,控件对象的运行过程流畅。
附图说明
图1是本发明实施例一的一种资源预加载方法的流程图;
图2是本发明实施例二的一种资源预加载方法的流程图;
图3是本发明实施例三的一种资源预加载装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
随着终端上安装的应用的数量越来越多,应用的启动速度和启动流畅性也越来越差,目前普遍是针对应用的软件功能进行裁剪,但是该通用性较差,并且处理过程复杂,可能导致应用的运行出现错误。本发明针对上述问题,提出了一种资源预加载方法和装置,能够提高控件对象的启动速度,通用性强,处理过程简单。
下面,通过以下各个实施例分别对本发明的资源预加载方法和装置进行详细介绍。本发明中的终端可以为智能手机、平板电脑、笔记本电脑、机顶盒等各种能够安装应用的终端。
实施例一:
参照图1,示出了本发明实施例一的一种资源预加载方法的流程图。该资源预加载方法可以包括以下步骤:
步骤101,接收针对已启动控件对象的操作信息。
为了方便用户使用,许多应用都为其自身提供了用于安装在终端上的客户端程序。在将应用的客户端程序下载并安装到终端上之后,用户即可在终端上实现对应用的使用和体验。
UI(User Interface,用户界面)是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换。用户界面是介于用户与硬件之间,为彼此之间交互沟通而设计的相关软件,使得用户能够方便有效地去操作硬件以达成双向之交互,完成所希望的工作,用户界面定义广泛,包含了人机交互与图形用户界面,凡参与人类与机械的信息交流的领域都存在着用户界面。
一个应用可以包括至少一个组件,无论是应用,还是应用中的组件,在UI上均以控件的形式排布。在启动某个控件对象后,该控件对象开始运行,在控件对象的运行过程中,可以接收针对该已启动控件对象的操作信息。本发明实施例中,该已启动控件对象可以为一个应用或者应用中的一个组件。
步骤102,根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源。
在接收到针对已启动控件对象的操作信息之后,即可进一步根据该操作信息确定待启动控件对象,及该待启动控件对象对应的显示资源。本发明实施例中,该待启动控件对象可以为一个应用或者应用中的一个组件。例如,在已启动控件对象为一个应用时,该待启动控件对象可以为独立于该应用的一个新的应用,也可以为该应用中的一个组件;在已启动控件对象为一个组件时,该待启动控件对象可以为独立于该组件的一个新的应用或者新的组件,也可以为该组件所属应用中的另一个组件,等等。
步骤103,将所述待启动控件对象对应的显示资源保存至缓存中。
在确定出待启动控件对象对应的显示资源之后,即可将其对应的显示资源保存至缓存中,以便后续能够直接从缓存中加载这些显示资源。
步骤104,在接收到针对所述待启动控件对象的启动指令后,从所述缓存中加载该待启动控件对象对应的显示资源。
如果接收到针对上述待启动控件对象的启动指令,则启动该待启动控件对象,由于该待启动控件对象对应的显示资源已经保存至缓存中,因此在启动过程中,即可从缓存中直接加载该待启动控件对象对应的显示资源,从而可以提高资源的加载速度,进而提高该控件对象的启动速度。
本发明实施例中,由于在运行当前已启动控件时,即可将后续待启动控件对象对应的显示资源预先保存至缓存中,因此在启动该待启动控件对象时即可直接从缓存中加载对应的显示资源,从而加快控件对象的启动速度,提升用户体验,该方法不需要针对控件对象的软件功能进行裁剪,通用性强,处理过程简单,控件对象的运行过程流畅。
实施例二:
参照图2,示出了本发明实施例二的一种资源预加载方法的流程图。该资源预加载方法可以包括以下步骤:
步骤201,接收针对已启动控件对象的操作信息。
当用户需要使用终端上的某一控件对象时,首先可以从终端的某一UI中选定该控件对象并启动,例如可以点击UI上该控件对象对应的图标以启动该控件对象。本发明实施例中,在启动该控件对象的同时,还可以启动预加载线程,根据该预加载线程执行下述的预加载资源操作。
在运行该已启动控件对象的过程中,可以针对该控件对象执行一系列的操作,例如触摸屏幕、点击按键、输入信息等,终端可以接收针对该已启动控件对象的操作信息。
步骤202,根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源。
根据所接收到的针对已启动控件对象的操作信息,终端即可确定待启动控件对象即后续将要启动的控件对象,以及该待启动控件对象对应的显示资源。
在本发明的一种优选实施例中,可以预先设置资源加载列表,后续终端基于该资源加载列表即可根据操作信息确定待启动控件对象,及待启动控件对象对应的显示资源。
首先,介绍如何设置资源加载列表。
本发明实施例中,可以通过对用户的历史操作信息进行分析得到资源加载列表。具体过程可以为:
获取针对终端中的控件对象的历史操作信息;
从所述历史操作信息中获取已点击的该控件对象的UI中的控件对象的控件ID序列;
当某个控件ID序列的发生次数大于预设阈值时,提取该控件ID序列中除最后一个控件ID之外的控件ID序列作为当前条目的控件ID序列,并获取最后一个控件ID作为当前条目的控件ID序列对应的控件对象信息,获取最后一个控件ID对应的显示资源信息作为当前条目的控件ID序列对应的显示资源信息;
将所有条目组合成资源加载列表。
例如,资源加载列表如表一所示:
{ID1},{ID2,ID3},{ID4} | IDx,显示资源信息A |
{ID1,ID2,ID3,ID4},{ID5} | IDy,显示资源信息B |
{ID1},{ID6} | IDz,显示资源信息C |
表一
该资源加载列表包括3个条目,其中,第一列为各个条目中包括的控件ID序列,例如,“{ID1},{ID2,ID3},{ID4}”这一控件ID序列表示,第一次点击的控件对象为ID1,第二次点击的控件对象为ID2或ID3,第三次点击的控件对象为ID4;第二列为各个条目中包括的控件ID序列对应的控件对象信息(IDx、IDy、IDz)及该控件对象对应的显示资源信息(显示资源信息A、显示资源信息B、显示资源信息C)。
其次,介绍如何基于资源加载列表确定待启动控件对象,及待启动控件对象对应的显示资源。
该步骤202可以包括以下子步骤:
子步骤a1,从所述操作信息中获取已点击控件对象的控件ID,并获取目标控件对象的控件ID。
在启动控件对象后,即可进入该已启动控件对象的UI,该UI中可以包括至少一个控件对象,上述已点击控件对象和目标控件对象均该所述已启动控件对象的用户界面中的控件对象。在点击某个控件对象后,即可在操作信息中记录该已点击控件对象的控件ID,因此从操作信息中即可获取已点击控件对象的控件ID。
对于其中获取目标控件对象的控件ID的方法,本发明实施例中可以采用以下两种方式:
第一种方式:
获取目标控件对象的控件ID可以包括:在点击目标控件对象之后,从操作信息中获取所述目标控件对象的控件ID。
该种方式下,是在点击目标控件对象之后获取,即在点击目标控件之后进行资源加载列表的匹配,以确定待启动控件对象。
第二种方式:
获取目标控件对象的控件ID可以包括:检测触摸体与电容式触摸屏之间形成的耦合电容的电容值的变化趋势;当检测到某一位置的电容值大于预设阈值时,确定该位置处的控件对象为目标控件对象,确定该位置处的控件ID为目标控件对象的控件ID。
该种方式是在操作信息为采用电容式触摸屏输入的信息的情况下实现的。为了加速匹配过程,针对电容式触摸屏增加了基于点击位置的预测。电容式触摸屏是利用感应电流进行工作的,当触摸体靠近电容式触摸屏时,触摸体和触摸屏之间形成耦合电容,触摸体离触摸屏越近,该电容值就会越大,通过检测该电容值变化趋势,即可预测用户可能要点击的控件对象。利用电容式触摸屏的这种特性可以从预测用户将要点击的控件对象,因此可以在用户尚未发生点击事件的时候进行资源加载列表的匹配,从而进一步加速资源加载过程。
子步骤a2,将所述已点击控件对象的控件ID按照点击顺序进行排序,将排序后的控件ID与所述目标控件对象的控件ID组合成控件ID序列。
将目标控件对象的控件ID设置在排序后的控件ID之后,即可生成控件ID序列。
子步骤a3,从预先设置的资源加载列表中查找与所述控件ID序列相匹配的条目。
资源加载列表中可以包括至少一个条目,每个条目包括控件ID序列,以及所述控件ID序列对应的控件对象信息和所述控件对象对应的显示资源信息。因此,在上述子步骤a2中得到控件ID序列之后,即可从资源加载列表中查找与该控件ID序列相匹配的条目,即如果某个条目中包括该控件ID序列,该条目即为与该控件ID序列相匹配的条目。
子步骤a4,将所述条目中包括的控件对象信息所指示的控件对象确定为待启动控件对象,将所述显示资源信息所指示的显示资源确定为待启动控件对象对应的显示资源。
例如,将排序后的控件ID与目标控件对象的控件ID组合成的控件ID序列为{ID1},{ID2},{ID4},则从上述表一中即可查找到与该控件ID序列相匹配的条目为第一个条目,因此即可确定待启动控件对象为IDx,确定待启动控件对象对应的显示资源为A。
步骤203,判断所述待启动控件对象对应的显示资源是否已经保存在缓存中。
本发明实施例中,如果显示资源被保存至缓存中,则将在缓存中保留,当缓存中保存的显示资源到达缓存的容量限制时,将按照保存的时间,删除保存时间早的部分资源,以腾出部分资源保存后续的显示资源。因此,本发明实施例中,可能存在一种情况,即通过上述步骤202中确定出待启动控件对象及待启动控件对象对应的显示资源,而该待启动控件对象对应的显示资源是否已经保存在缓存中。例如,之前启动过该控件对象但是后来退出,该种情况下该控件对象对应的显示资源保存在缓存中,或者,之前将该控件对象对应的显示资源保存在缓存中,但是后续未启动该控件对象等,这些情况都将导致该待启动控件对象对应的显示资源是否已经保存在缓存中。
因此,在本发明的一种优选实施例中,在确定出待启动控件对象及待启动控件对象对应的显示资源之后,还可以进一步判断所述待启动控件对象对应的显示资源是否已经保存在缓存中。若否,则可以执行下述步骤204;若是,则无需再重新保存该待启动控件对象对应的显示资源,等待针对该待启动控件对象的启动指令即可。根据该种方式,可以避免不必要的保存操作,进一步降低过程的复杂度。
步骤204,若否,则将所述待启动控件对象对应的显示资源保存至缓存中。
如果上述步骤203中判断出待启动控件对象对应的显示资源还未保存在缓存中,则可以将所述待启动控件对象对应的显示资源保存至缓存中。
在本发明的一种优选实施例中,可以为所有的控件对象分配一个空间较大的缓存,因此,可以将所有控件对象对应的显示资源直接保存至该缓存中。
在本发明的另一种优选实施例中,还可以分别针对每个进程设置对应的缓存,可以按照进程缓存上述显示资源。因此,在将所述待启动控件对象对应的显示资源保存至缓存中之前,还可以执行以下步骤:获取预先设置的进程关系,根据所述进程关系判定所述待启动控件对象与所述已启动控件对象是否运行在同一进程。对于进程关系,本领域技术人员可以按照实际经验进行相关设置,例如,可以设置应用中的组件和该组件所属的应用运行在同一进程,还可以设置属于同一应用的各个组件运行在同一进程,等等,本发明实施例对此并不加以限制。
在按照进程缓存显示资源的情况下,将所述待启动控件对象对应的显示资源保存至缓存中的步骤可以包括以下子步骤:
子步骤b1,如果所述待启动控件对象与所述已启动控件对象运行在同一进程,则从磁盘中读取所述待启动控件对象对应的显示资源,将所述显示资源保存至所述已启动控件对象的进程对应的缓存中;
子步骤b2,如果所述待启动控件对象与所述已启动控件对象运行在不同进程,则从磁盘中读取所述待启动控件对象对应的显示资源,并从后台启动所述待启动控件对象的进程,将所述显示资源保存至所述待启动控件对象的进程对应的缓存中。
当然,本领域技术人员还可以按照其他任意方式分配缓存,保存时对应保存即可,本发明实施例对此并不加以限制。
上述步骤202~步骤204即可在预加载线程中执行。
步骤205,在接收到针对所述待启动控件对象的启动指令后,从所述缓存中加载该待启动控件对象对应的显示资源。
在接收到针对所述待启动控件对象的启动指令后,由于该待启动控件对象对应的显示资源已经预先保存在缓存中,因此可以直接从缓存中加载该待启动控件对象对应的显示资源,这些显示资源可以包括用户显示相关的图片、布局、视频等。而该待启动控件对象还会包括一些其他资源,这些资源未保存至缓存中,因此可以从磁盘中加载。资源加载完成后,即可运行该控件对象,进入该控件对象对应的UI。
下面,通过一个具体实例进行说明:
1、启动拨号盘程序,同时在后台运行预加载线程。
2、在拨号盘中输入电话号码,预加载线程根据操作信息预测出用户下一步会进行打电话操作,即确定出待启动控件对象为通话程序。
3、根据预加载线程预测结果,将通话程序对应的显示资源保存到缓存中。
4、点击拨打电话按钮,启动通话程序,查询需要加载的资源是否保存在缓存中,如果存在则直接从缓存中加载,否则从磁盘中加载,即从缓存中加载对应的显示资源,从磁盘中加载其他资源。
5、资源加载完毕后,显示通话界面。
本发明实施例可以预先缓存待启动控件对象对应的显示资源,从而加快控件对象的启动速度,提升用户体验,该方法通用性强,处理过程简单,控件对象的运行过程流畅。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
实施例三:
参照图3,示出了本发明实施例三的一种资源预加载装置的结构框图。该资源预加载装置可以包括以下模块:
接收模块301,用于接收针对已启动控件对象的操作信息;
确定模块302,用于根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源;
保存模块303,用于将所述待启动控件对象对应的显示资源保存至缓存中;
加载模块304,用于在接收到针对所述待启动控件对象的启动指令后,从所述缓存中加载该待启动控件对象对应的显示资源。
其中,所述已启动控件对象为应用或者应用中的组件,所述待启动控件对象为应用或者应用中的组件。
所述确定模块可以包括以下子模块:
获取子模块,用于从所述操作信息中获取已点击控件对象的控件ID,并获取目标控件对象的控件ID;其中,所述已点击控件对象和目标控件对象为所述已启动控件对象的用户界面中的控件对象;
组合子模块,用于将所述已点击控件对象的控件ID按照点击顺序进行排序,将排序后的控件ID与所述目标控件对象的控件ID组合成控件ID序列;
查找子模块,用于从预先设置的资源加载列表中查找与所述控件ID序列相匹配的条目;所述资源加载列表包括至少一个条目,每个条目包括控件ID序列,以及所述控件ID序列对应的控件对象信息和所述控件对象对应的显示资源信息;
确定子模块,用于将所述条目中包括的控件对象信息所指示的控件对象确定为待启动控件对象,将所述显示资源信息所指示的显示资源确定为待启动控件对象对应的显示资源。
其中,所述获取子模块,具体可以用于在点击目标控件对象之后,从操作信息中获取所述目标控件对象的控件ID。
所述操作信息可以为采用电容式触摸屏输入的信息,该种情况下所述获取子模块,具体可以用于检测触摸体与电容式触摸屏之间形成的耦合电容的电容值的变化趋势;当检测到某一位置的电容值大于预设阈值时,确定该位置处的控件对象为目标控件对象,确定该位置处的控件ID为目标控件对象的控件ID。
在本发明的一种优选实施例中,该资源预加载装置还可以包括以下模块:
判断模块,用于在所述保存模块将所述待启动控件对象对应的显示资源保存至缓存中之前,判断所述待启动控件对象对应的显示资源是否已经保存在缓存中;若否,则调用所述保存模块;
判定模块,用于在所述保存模块将所述待启动控件对象对应的显示资源保存至缓存中之前,获取预先设置的进程关系,根据所述进程关系判定所述待启动控件对象与所述已启动控件对象是否运行在同一进程。
该种情况下,所述保存模块可以包括以下子模块:
第一保存子模块,用于在所述判定模块判定出所述待启动控件对象与所述已启动控件对象运行在同一进程时,从磁盘中读取所述待启动控件对象对应的显示资源,将所述显示资源保存至所述已启动控件对象的进程对应的缓存中;
第二保存子模块,用于在在所述判定模块判定出所述待启动控件对象与所述已启动控件对象运行在不同进程时,从磁盘中读取所述待启动控件对象对应的显示资源,并从后台启动所述待启动控件对象的进程,将所述显示资源保存至所述待启动控件对象的进程对应的缓存中。
本发明实施例中首先可以接收针对已启动控件对象的操作信息,然后根据该操作信息确定待启动控件对象,及待启动控件对象对应的显示资源,并将待启动控件对象对应的显示资源保存至缓存中,最后在接收到针对上述待启动控件对象的启动指令后,从缓存中加载该待启动控件对象对应的显示资源。由于在运行当前已启动控件时,即可将后续待启动控件对象对应的显示资源预先保存至缓存中,因此在启动该待启动控件对象时即可直接从缓存中加载对应的显示资源,从而加快控件对象的启动速度,提升用户体验,该方法不需要针对控件对象的软件功能进行裁剪,通用性强,处理过程简单,控件对象的运行过程流畅。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、控件对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种资源预加载方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (16)
1.一种资源预加载方法,其特征在于,包括:
接收针对已启动控件对象的操作信息;
根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源;
将所述待启动控件对象对应的显示资源保存至缓存中;
在接收到针对所述待启动控件对象的启动指令后,从所述缓存中加载该待启动控件对象对应的显示资源。
2.根据权利要求1所述的方法,其特征在于,所述根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源的步骤包括:
从所述操作信息中获取已点击控件对象的控件ID,并获取目标控件对象的控件ID;其中,所述已点击控件对象和目标控件对象为所述已启动控件对象的用户界面中的控件对象;
将所述已点击控件对象的控件ID按照点击顺序进行排序,将排序后的控件ID与所述目标控件对象的控件ID组合成控件ID序列;
从预先设置的资源加载列表中查找与所述控件ID序列相匹配的条目;所述资源加载列表包括至少一个条目,每个条目包括控件ID序列,以及所述控件ID序列对应的控件对象信息和所述控件对象对应的显示资源信息;
将所述条目中包括的控件对象信息所指示的控件对象确定为待启动控件对象,将所述显示资源信息所指示的显示资源确定为待启动控件对象对应的显示资源。
3.根据权利要求2所述的方法,其特征在于,所述获取目标控件对象的控件ID的步骤包括:
在点击目标控件对象之后,从操作信息中获取所述目标控件对象的控件ID。
4.根据权利要求2所述的方法,其特征在于,所述操作信息为采用电容式触摸屏输入的信息,
所述获取目标控件对象的控件ID的步骤包括:
检测触摸体与电容式触摸屏之间形成的耦合电容的电容值的变化趋势;
当检测到某一位置的电容值大于预设阈值时,确定该位置处的控件对象为目标控件对象,确定该位置处的控件ID为目标控件对象的控件ID。
5.根据权利要求1所述的方法,其特征在于,在所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤之前,还包括:
获取预先设置的进程关系,根据所述进程关系判定所述待启动控件对象与所述已启动控件对象是否运行在同一进程。
6.根据权利要求5所述的方法,其特征在于,所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤包括:
如果所述待启动控件对象与所述已启动控件对象运行在同一进程,则从磁盘中读取所述待启动控件对象对应的显示资源,将所述显示资源保存至所述已启动控件对象的进程对应的缓存中;
如果所述待启动控件对象与所述已启动控件对象运行在不同进程,则从磁盘中读取所述待启动控件对象对应的显示资源,并从后台启动所述待启动控件对象的进程,将所述显示资源保存至所述待启动控件对象的进程对应的缓存中。
7.根据权利要求1所述的方法,其特征在于,所述已启动控件对象为应用或者应用中的组件,所述待启动控件对象为应用或者应用中的组件。
8.根据权利要求1所述的方法,其特征在于,在所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤之前,还包括:
判断所述待启动控件对象对应的显示资源是否已经保存在缓存中;
若否,则执行所述将所述待启动控件对象对应的显示资源保存至缓存中的步骤。
9.一种资源预加载装置,其特征在于,包括:
接收模块,用于接收针对已启动控件对象的操作信息;
确定模块,用于根据所述操作信息确定待启动控件对象,及所述待启动控件对象对应的显示资源;
保存模块,用于将所述待启动控件对象对应的显示资源保存至缓存中;
加载模块,用于在接收到针对所述待启动控件对象的启动指令后,从所述缓存中加载该待启动控件对象对应的显示资源。
10.根据权利要求9所述的装置,其特征在于,所述确定模块包括:
获取子模块,用于从所述操作信息中获取已点击控件对象的控件ID,并获取目标控件对象的控件ID;其中,所述已点击控件对象和目标控件对象为所述已启动控件对象的用户界面中的控件对象;
组合子模块,用于将所述已点击控件对象的控件ID按照点击顺序进行排序,将排序后的控件ID与所述目标控件对象的控件ID组合成控件ID序列;
查找子模块,用于从预先设置的资源加载列表中查找与所述控件ID序列相匹配的条目;所述资源加载列表包括至少一个条目,每个条目包括控件ID序列,以及所述控件ID序列对应的控件对象信息和所述控件对象对应的显示资源信息;
确定子模块,用于将所述条目中包括的控件对象信息所指示的控件对象确定为待启动控件对象,将所述显示资源信息所指示的显示资源确定为待启动控件对象对应的显示资源。
11.根据权利要求10所述的装置,其特征在于,所述获取子模块,具体用于在点击目标控件对象之后,从操作信息中获取所述目标控件对象的控件ID。
12.根据权利要求10所述的装置,其特征在于,所述操作信息为采用电容式触摸屏输入的信息,
所述获取子模块,具体用于检测触摸体与电容式触摸屏之间形成的耦合电容的电容值的变化趋势;当检测到某一位置的电容值大于预设阈值时,确定该位置处的控件对象为目标控件对象,确定该位置处的控件ID为目标控件对象的控件ID。
13.根据权利要求9所述的装置,其特征在于,还包括:
判定模块,用于在所述保存模块将所述待启动控件对象对应的显示资源保存至缓存中之前,获取预先设置的进程关系,根据所述进程关系判定所述待启动控件对象与所述已启动控件对象是否运行在同一进程。
14.根据权利要求13所述的装置,其特征在于,所述保存模块包括:
第一保存子模块,用于在所述判定模块判定出所述待启动控件对象与所述已启动控件对象运行在同一进程时,从磁盘中读取所述待启动控件对象对应的显示资源,将所述显示资源保存至所述已启动控件对象的进程对应的缓存中;
第二保存子模块,用于在在所述判定模块判定出所述待启动控件对象与所述已启动控件对象运行在不同进程时,从磁盘中读取所述待启动控件对象对应的显示资源,并从后台启动所述待启动控件对象的进程,将所述显示资源保存至所述待启动控件对象的进程对应的缓存中。
15.根据权利要求9所述的装置,其特征在于,所述已启动控件对象为应用或者应用中的组件,所述待启动控件对象为应用或者应用中的组件。
16.根据权利要求9所述的装置,其特征在于,还包括:
判断模块,用于在所述保存模块将所述待启动控件对象对应的显示资源保存至缓存中之前,判断所述待启动控件对象对应的显示资源是否已经保存在缓存中;若否,则调用所述保存模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410480163.4A CN104281472B (zh) | 2014-09-18 | 2014-09-18 | 一种资源预加载方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410480163.4A CN104281472B (zh) | 2014-09-18 | 2014-09-18 | 一种资源预加载方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104281472A true CN104281472A (zh) | 2015-01-14 |
CN104281472B CN104281472B (zh) | 2017-12-26 |
Family
ID=52256374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410480163.4A Active CN104281472B (zh) | 2014-09-18 | 2014-09-18 | 一种资源预加载方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104281472B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104615756A (zh) * | 2015-02-12 | 2015-05-13 | 北京航空航天大学 | 网页加载方法 |
CN105808697A (zh) * | 2016-03-03 | 2016-07-27 | 北京东方车云信息技术有限公司 | 一种基于本地存储的数据预加载方法 |
CN105955766A (zh) * | 2016-04-22 | 2016-09-21 | 北京小米移动软件有限公司 | 应用预加载方法及装置 |
CN106227592A (zh) * | 2016-09-08 | 2016-12-14 | 腾讯数码(天津)有限公司 | 任务调用方法及任务调用装置 |
CN106484104A (zh) * | 2016-09-19 | 2017-03-08 | 深圳市金立通信设备有限公司 | 一种应用程序的运行方法及终端 |
CN106681758A (zh) * | 2016-12-07 | 2017-05-17 | 广东欧珀移动通信有限公司 | WiFi热点的开启方法及装置 |
CN107102846A (zh) * | 2016-02-19 | 2017-08-29 | 青岛海信移动通信技术股份有限公司 | 一种应用程序界面显示方法及终端 |
CN107613386A (zh) * | 2017-09-30 | 2018-01-19 | 烽火通信科技股份有限公司 | 一种iptv应用的启动方法和启动系统 |
WO2018059280A1 (zh) * | 2016-09-27 | 2018-04-05 | 华为技术有限公司 | 为应用分配系统资源的方法和终端 |
CN108536481A (zh) * | 2018-02-28 | 2018-09-14 | 努比亚技术有限公司 | 一种应用程序启动方法、移动终端及计算机存储介质 |
CN109522124A (zh) * | 2018-11-19 | 2019-03-26 | 郑州云海信息技术有限公司 | 存储管理系统加载方法、装置、设备及可读存储介质 |
CN109542578A (zh) * | 2018-11-30 | 2019-03-29 | 北京微播视界科技有限公司 | 一种列表界面的显示方法、装置、设备及存储介质 |
CN110209435A (zh) * | 2019-04-28 | 2019-09-06 | 北京蓦然认知科技有限公司 | 一种应用预加载方法、装置 |
CN110825477A (zh) * | 2019-11-04 | 2020-02-21 | 上海达梦数据库有限公司 | 图形界面的加载方法、装置、设备及存储介质 |
CN110866164A (zh) * | 2018-08-17 | 2020-03-06 | 亿度慧达教育科技(北京)有限公司 | 数据获取方法及计算机存储介质 |
CN114168223A (zh) * | 2021-12-06 | 2022-03-11 | 福建天晴数码有限公司 | 一种提升编辑中资源预览速度的技术方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102479094A (zh) * | 2010-11-30 | 2012-05-30 | 英业达股份有限公司 | 可携式通讯装置运作方法 |
CN102541602A (zh) * | 2011-12-28 | 2012-07-04 | 用友软件股份有限公司 | 界面的预加载装置和预加载方法 |
WO2013028438A1 (en) * | 2011-08-22 | 2013-02-28 | Decoteau Don | System and method for dynamically assembling an application on a client device |
CN103077224A (zh) * | 2011-12-30 | 2013-05-01 | 微软公司 | 用于基于上下文的装置动作预测的方法和系统 |
CN103577212A (zh) * | 2012-08-08 | 2014-02-12 | 腾讯科技(深圳)有限公司 | 系统启动预加载方法及装置 |
-
2014
- 2014-09-18 CN CN201410480163.4A patent/CN104281472B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102479094A (zh) * | 2010-11-30 | 2012-05-30 | 英业达股份有限公司 | 可携式通讯装置运作方法 |
WO2013028438A1 (en) * | 2011-08-22 | 2013-02-28 | Decoteau Don | System and method for dynamically assembling an application on a client device |
CN102541602A (zh) * | 2011-12-28 | 2012-07-04 | 用友软件股份有限公司 | 界面的预加载装置和预加载方法 |
CN103077224A (zh) * | 2011-12-30 | 2013-05-01 | 微软公司 | 用于基于上下文的装置动作预测的方法和系统 |
CN103577212A (zh) * | 2012-08-08 | 2014-02-12 | 腾讯科技(深圳)有限公司 | 系统启动预加载方法及装置 |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104615756A (zh) * | 2015-02-12 | 2015-05-13 | 北京航空航天大学 | 网页加载方法 |
CN104615756B (zh) * | 2015-02-12 | 2017-12-01 | 北京航空航天大学 | 网页加载方法 |
CN107102846A (zh) * | 2016-02-19 | 2017-08-29 | 青岛海信移动通信技术股份有限公司 | 一种应用程序界面显示方法及终端 |
CN105808697A (zh) * | 2016-03-03 | 2016-07-27 | 北京东方车云信息技术有限公司 | 一种基于本地存储的数据预加载方法 |
CN105955766A (zh) * | 2016-04-22 | 2016-09-21 | 北京小米移动软件有限公司 | 应用预加载方法及装置 |
CN105955766B (zh) * | 2016-04-22 | 2019-08-30 | 北京小米移动软件有限公司 | 应用预加载方法及装置 |
CN106227592A (zh) * | 2016-09-08 | 2016-12-14 | 腾讯数码(天津)有限公司 | 任务调用方法及任务调用装置 |
CN106484104A (zh) * | 2016-09-19 | 2017-03-08 | 深圳市金立通信设备有限公司 | 一种应用程序的运行方法及终端 |
WO2018059280A1 (zh) * | 2016-09-27 | 2018-04-05 | 华为技术有限公司 | 为应用分配系统资源的方法和终端 |
US11360817B2 (en) | 2016-09-27 | 2022-06-14 | Huawei Technologies Co., Ltd. | Method and terminal for allocating system resource to application |
CN106681758A (zh) * | 2016-12-07 | 2017-05-17 | 广东欧珀移动通信有限公司 | WiFi热点的开启方法及装置 |
CN106681758B (zh) * | 2016-12-07 | 2019-04-05 | Oppo广东移动通信有限公司 | WiFi热点的开启方法及装置 |
CN107613386A (zh) * | 2017-09-30 | 2018-01-19 | 烽火通信科技股份有限公司 | 一种iptv应用的启动方法和启动系统 |
CN107613386B (zh) * | 2017-09-30 | 2019-09-27 | 烽火通信科技股份有限公司 | 一种iptv应用的启动方法和启动系统 |
CN108536481A (zh) * | 2018-02-28 | 2018-09-14 | 努比亚技术有限公司 | 一种应用程序启动方法、移动终端及计算机存储介质 |
CN110866164A (zh) * | 2018-08-17 | 2020-03-06 | 亿度慧达教育科技(北京)有限公司 | 数据获取方法及计算机存储介质 |
CN109522124B (zh) * | 2018-11-19 | 2021-12-17 | 郑州云海信息技术有限公司 | 存储管理系统加载方法、装置、设备及可读存储介质 |
CN109522124A (zh) * | 2018-11-19 | 2019-03-26 | 郑州云海信息技术有限公司 | 存储管理系统加载方法、装置、设备及可读存储介质 |
CN109542578A (zh) * | 2018-11-30 | 2019-03-29 | 北京微播视界科技有限公司 | 一种列表界面的显示方法、装置、设备及存储介质 |
CN110209435A (zh) * | 2019-04-28 | 2019-09-06 | 北京蓦然认知科技有限公司 | 一种应用预加载方法、装置 |
CN110825477A (zh) * | 2019-11-04 | 2020-02-21 | 上海达梦数据库有限公司 | 图形界面的加载方法、装置、设备及存储介质 |
CN114168223A (zh) * | 2021-12-06 | 2022-03-11 | 福建天晴数码有限公司 | 一种提升编辑中资源预览速度的技术方法及系统 |
CN114168223B (zh) * | 2021-12-06 | 2023-11-03 | 福建天晴数码有限公司 | 一种提升编辑中资源预览速度的技术方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104281472B (zh) | 2017-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104281472A (zh) | 一种资源预加载方法和装置 | |
RU2703955C2 (ru) | Непрерывность задач между устройствами | |
EP2633487B1 (en) | Method and system to recommend applications from an application market place to a new device | |
US10789304B2 (en) | Method and system for measuring user engagement with content items | |
US20230041467A1 (en) | Method and system for measuring user engagement with content items | |
US11310066B2 (en) | Method and apparatus for pushing information | |
CN101923432A (zh) | 一种移动终端中应用程序的调用方法及装置 | |
CN113037929B (zh) | 一种信息接力输出方法、装置、电子设备及存储介质 | |
CN108549567B (zh) | 动画显示方法、装置、终端、服务器及存储介质 | |
CN102713820A (zh) | 一种操作界面管理方法、装置及移动终端 | |
CN105208015A (zh) | 多账号登陆应用的处理方法、装置和终端设备 | |
US9280452B1 (en) | Systems and methods for generating test cases | |
CN111897740A (zh) | 用户界面的测试方法、装置、电子设备及计算机可读介质 | |
CN112099684A (zh) | 一种搜索展示方法、装置及电子设备 | |
CN108712478A (zh) | 一种分享寄宿应用的方法及设备 | |
CN105468238A (zh) | 文件图标显示方法、装置和设备 | |
CN112486444A (zh) | 投屏方法、装置、设备和可读存储介质 | |
CN111382182A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US11222090B2 (en) | Site and service signals for driving automated custom system configuration | |
CN104050001A (zh) | 基于Android系统的资源处理方法、装置和设备 | |
CN102945233A (zh) | 电子设备及其数据管理方法 | |
CN112199561A (zh) | 应用搜索方法和装置 | |
CN113849524B (zh) | 一种数据处理方法及装置 | |
US10133446B2 (en) | Content chase-ability for apps | |
CN114817809A (zh) | 信息显示方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 266071 Shandong city of Qingdao province Jiangxi City Road No. 11 Patentee after: Qingdao Hisense Mobile Communication Technology Co.,Ltd. Country or region after: China Address before: 266071 Shandong city of Qingdao province Jiangxi City Road No. 11 Patentee before: HISENSE MOBILE COMMUNICATIONS TECHNOLOGY Co.,Ltd. Country or region before: China |
|
CP03 | Change of name, title or address |