软件恢复方法、装置、终端和介质制造方法及图纸

技术编号:21273326 阅读:15 留言:0更新日期:2019-06-06 07:51
本公开实施例公开了一种软件恢复方法、装置、终端和介质,所述方法包括:在终端上的客户端软件运行时,将待显示对象的框架模板加载到内存中,并将所述待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据;在设定触发条件下,以当前运行的对象为单位,将对象数据进行终端本地持久化存储;在所述客户端软件冷启动时,从终端本地向内存中加载存储的对象数据进行恢复。本公开实施例通过将对象实体整体进行存储,以使在客户端软件冷启动时,直接加载存储的对象数据即可恢复客户端软件关闭时的界面,而无需重新创建对象模板,提高了客户端软件的恢复效率,解决了现有技术中客户端软件关闭后恢复过程繁琐、响应慢的问题。

Software recovery methods, devices, terminals and media

The present disclosure embodiments disclose a software recovery method, device, terminal and medium. The method includes: loading the frame template of the object to be displayed into memory while the client software on the terminal is running, loading the content data of the object to be displayed into the frame template of memory as the object data, and running at the current time under setting trigger conditions. The object is a unit that stores the object data locally in the terminal and restores the stored object data loaded locally from the terminal to memory when the client software is cold-started. The present disclosure embodiment improves the recovery efficiency of client software by storing the object entity as a whole so that when client software is cold-started, the interface when client software is closed can be restored by loading the stored object data directly without re-creating the object template, and solves the problems of tedious recovery process and slow response after client software is closed in the prior art.

【技术实现步骤摘要】
软件恢复方法、装置、终端和介质
本公开实施例涉及互联网
,尤其涉及一种软件恢复方法、装置、终端和介质。
技术介绍
随着互联网技术和智能终端的发展,人们越来越离不开智能终端,可供在智能终端上安装的客户端软件的种类也愈加丰富,为人们的日常生活带来了极大便利。例如,音视频播放类应用、电子商务类应用和新闻信息流类的应用等。在用户使用客户端软件的过程中,会遇到关闭客户端后进行冷启动的情况。现有技术中,当客户端软件关闭时,会将软件当前的运行状态以及当前显示界面的相关配置进行保存,例如通过终端系统提供的一些接口函数或存储类进行保存,这样,当客户端软件再次冷启动时,软件能够通过加载状态和相关配置恢复到关闭前的界面状态,方便用户继续使用。但是,上述方法不仅需要存储大量数据,而且当软件恢复时,还需要重新创建关闭时运行的界面对象,过程繁琐,响应慢。公开内容本公开实施例提供一种软件恢复方法、装置、终端和介质,以解决现有技术中客户端软件关闭后恢复过程繁琐、响应慢的问题。第一方面,本公开实施例提供了一种软件恢复方法,该方法包括:在终端上的客户端软件运行时,将待显示对象的框架模板加载到内存中,并将所述待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据;在设定触发条件下,以当前运行的对象为单位,将对象数据进行终端本地持久化存储;在所述客户端软件冷启动时,从终端本地向内存中加载存储的对象数据进行恢复。可选的,所述以当前运行的对象为单位,将对象数据进行终端本地持久化存储,包括:以当前运行的对象为单位,将对象数据进行序列化存储在终端本地的持久化存储空间;相应的,所述从终端本地向内存中加载存储的对象数据进行恢复,包括:从终端本地向内存中加载存储的序列化对象数据,并通过反序列化以恢复所述对象。可选的,所述从终端本地向内存中加载存储的序列化对象数据,并通过反序列化以恢复所述对象,包括:从终端本地向内存中加载存储的序列化对象数据,并判断所述序列化对象数据中包括的对象类型;针对不同的对象类型进行相应的反序列化,以恢复所述对象。可选的,所述以当前运行的对象为单位,将对象数据进行终端本地持久化存储,包括:以当前运行的对象为单位,将对象数据进行终端本地的增量持久化存储。可选的,所述对象数据至少包括呈现该对象所需的界面显示元素,以及与用户基于该对象的使用状态相关的数据。可选的,所述框架模板至少包括:界面显示框架、布局约束参数、控件响应代码以及模板显示内容填充规则。可选的,所述设定触发条件包括下述至少一项:定时触发、状态变更时触发和用户操作时触发。第二方面,本公开实施例还提供了一种软件恢复装置,该装置包括:框架模板加载模块,用于在终端上的客户端软件运行时,将待显示对象的框架模板加载到内存中,并将所述待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据;对象数据存储模块,用于在设定触发条件下,以当前运行的对象为单位,将对象数据进行终端本地持久化存储;对象数据加载模块,用于在所述客户端软件冷启动时,从终端本地向内存中加载存储的对象数据进行恢复。可选的,所述对象数据存储模块具体用于:在设定触发条件下,以当前运行的对象为单位,将对象数据进行序列化存储在终端本地的持久化存储空间;相应的,所述对象数据加载模块具体用于:在所述客户端软件冷启动时,从终端本地向内存中加载存储的序列化对象数据,并通过反序列化以恢复所述对象。可选的,所述对象数据加载模块,包括:判断单元,用于在所述客户端软件冷启动时,从终端本地向内存中加载存储的序列化对象数据,并判断所述序列化对象数据中包括的对象类型;恢复单元,用于根据所述判断单元的判断结果,针对不同的对象类型进行相应的反序列化,以恢复所述对象。可选的,所述对象数据存储模块具体用于:在设定触发条件下,以当前运行的对象为单位,将对象数据进行终端本地的增量持久化存储。可选的,所述对象数据至少包括呈现该对象所需的界面显示元素,以及与用户基于该对象的使用状态相关的数据。可选的,所述框架模板至少包括:界面显示框架、布局约束参数、控件响应代码以及模板显示内容填充规则。可选的,所述设定触发条件包括下述至少一项:定时触发、状态变更时触发和用户操作时触发。第三方面,本公开实施例还提供了一种终端,包括:一个或多个处理装置;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理装置执行,使得所述一个或多个处理装置实现如本公开任一实施例所述的软件恢复方法。第四方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被装置执行时实现如本公开任一实施例所述的软件恢复方法。本公开实施例在客户端软件运行时,将待显示对象的框架模板加载到内存中,并将待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据,在设定触发条件下,以当前运行的对象为单位,将对象数据进行终端本地持久化存储,由此通过将对象实体整体进行存储,以使在客户端软件冷启动时,直接从终端本地向内存中加载存储的对象数据即可恢复客户端软件关闭时的界面,而无需重新创建对象模板,提高了客户端软件的恢复效率,解决了现有技术中客户端软件关闭后恢复过程繁琐、响应慢的问题。附图说明图1是本公开实施例提供的一种软件恢复方法的流程示意图;图2是本公开实施例提供的另一种软件恢复方法的流程示意图;图3是本公开实施例提供的一种软件恢复装置的结构示意图;图4是本公开实施例提供的一种终端的硬件结构示意图。具体实施方式下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分而非全部结构。下述各实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案。图1是本公开实施例提供的一种软件恢复方法的流程示意图,本实施例可适用于客户端软件关闭后冷启动时恢复关闭之前的软件界面的情况,该方法可以由软件恢复装置来执行,该装置可以采用软件和/或硬件的方式实现,并可集成在终端中,例如智能手机或平板电脑等。如图1所示,本公开实施例中提供的软件恢复方法可以包括:S110、在终端上的客户端软件运行时,将待显示对象的框架模板加载到内存中,并将所述待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据。在客户端软件运行时需要使用和管理各种对象资源。所谓对象,即基于软件建立的某个业务实例,例如音乐的播放列表、文档的阅读界面、推荐文档列表等。这些对象都是基于程序确定的界面格式,再加载业务数据,而后展示给用户的,并且界面格式中还可包括控件,供用户进行控制。当客户端软件冷启动时,为了便于用户继续使用软件,则需要恢复软件关闭时的界面状态。在本实施例中,在客户端软件运行时,先将待显示对象的框架模板加载到内存中,并将所述待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据,然后在软件运行过程中,以运行的对象为单位将对象数据进行终端本地持久化存储,以便在客户端软件冷启动时,从终端本地向内存中加载存储的对象数据进行恢复,而由于内存中已经加载了待显示对象的框架模板,因此,在软件恢复时则无需重新创建对象模板,从而提高恢复效率。其中,框本文档来自技高网...

【技术保护点】
1.一种软件恢复方法,其特征在于,包括:在终端上的客户端软件运行时,将待显示对象的框架模板加载到内存中,并将所述待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据;在设定触发条件下,以当前运行的对象为单位,将对象数据进行终端本地持久化存储;在所述客户端软件冷启动时,从终端本地向内存中加载存储的对象数据进行恢复。

【技术特征摘要】
1.一种软件恢复方法,其特征在于,包括:在终端上的客户端软件运行时,将待显示对象的框架模板加载到内存中,并将所述待显示对象的待显示内容数据加载到内存的框架模板中,作为对象数据;在设定触发条件下,以当前运行的对象为单位,将对象数据进行终端本地持久化存储;在所述客户端软件冷启动时,从终端本地向内存中加载存储的对象数据进行恢复。2.根据权利要求1所述的方法,其特征在于,所述以当前运行的对象为单位,将对象数据进行终端本地持久化存储,包括:以当前运行的对象为单位,将对象数据进行序列化存储在终端本地的持久化存储空间;相应的,所述从终端本地向内存中加载存储的对象数据进行恢复,包括:从终端本地向内存中加载存储的序列化对象数据,并通过反序列化以恢复所述对象。3.根据权利要求2所述的方法,其特征在于,所述从终端本地向内存中加载存储的序列化对象数据,并通过反序列化以恢复所述对象,包括:从终端本地向内存中加载存储的序列化对象数据,并判断所述序列化对象数据中包括的对象类型;针对不同的对象类型进行相应的反序列化,以恢复所述对象。4.根据权利要求1所述的方法,其特征在于,所述以当前运行的对象为单位,将对象数据进行终端本地持久化存储,包括:以当前运行的对象为单位,将对象数据进行终端本地的增量持久化存储。5.根据权利要求1-4中任...

【专利技术属性】
技术研发人员:刘丰恺
申请(专利权)人:北京字节跳动网络技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1