CN111930455A - 页面更新方法、装置、终端及存储介质 - Google Patents
页面更新方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN111930455A CN111930455A CN202010756464.0A CN202010756464A CN111930455A CN 111930455 A CN111930455 A CN 111930455A CN 202010756464 A CN202010756464 A CN 202010756464A CN 111930455 A CN111930455 A CN 111930455A
- Authority
- CN
- China
- Prior art keywords
- layout
- target
- page
- program
- application program
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种页面更新方法、装置、终端及介质,包括:启动并运行所述目标应用程序;基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件;当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件;在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。本发明实施例可以在满足动态更新页面布局的需求的同时,节省了数据传输耗费的网络资源,提高页面更新的高效性和便捷性。
Description
技术领域
本发明涉及页面更新领域,尤其涉及一种页面更新方法、一种页面更新装置、一种终端及一种计算机存储介质。
背景技术
现有的页面更新技术为Android安装包发布上线以后,如果需要优化已有的页面布局、或者想在同一个页面中针对不同的用户群体展示不同的页面布局,即需要改变已发布的应用程序的页面布局时,在Android原生机制中使用打包好的安装包中的页面布局,因此,会造成下载的数据量大,浪费网络资源且更新不及时的问题。
发明内容
本发明实施例提供了一种页面更新方法、装置、终端及计算机存储介质,本发明实施例可以在可以在满足动态更新页面布局的需求的同时,节省了数据传输耗费的网络资源,提高页面更新的高效性和便捷性。
第一方面,本发明实施例提供了一种页面更新方法,应用于移动终端,所述移动终端安装有目标应用程序,且所述移动终端存储有所述目标应用程序的原始资源包,所述原始资源包包括至少一个原始布局文件,该页面更新方法包括:启动并运行所述目标应用程序;基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件;当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件;在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。
其中,所述方法还包括:在未查找到所述目标布局文件的情况下,从所述原始资源包中获取所述程序页面对应的目标布局文件且基于所述目标布局文件展示所述程序页面。
其中,所述启动并运行所述目标应用程序,包括:启动所述目标应用程序,以得到所述目标应用程序的主进程;将所述目标应用程序关联的原始布局加载器替换为目标布局加载器,所述目标布局加载器用于获得所述程序页面对应的目标布局文件;运行所述目标应用程序的主进程,且生成所述目标布局加载器的执行线程。
其中,当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件,包括:当所述目标应用程序的运行过程中需展示一程序页面,通过所述主进程向所述执行线程发送所述程序页面对应的目标布局标识;触发所述目标布局加载器的执行线程依据所述目标布局标识,从所述更新布局文件中查找所述程序页面对应的目标布局文件。
其中,从所述目标应用程序对应的服务器下载更新布局包,包括:触发所述目标布局加载器的执行线程,从所述目标应用程序对应的服务器下载更新布局包。
第二方面,本发明实施例提供了一种页面更新方法,应用于开发终端,所述方法包括:确定目标应用程序待更新的程序页面;确定所述程序页面更新后的目标数据,所述目标数据包括至少一个更新布局文件和/或至少一个更新素材数据;将所述目标数据编译打包,以得到更新布局包;将所述更新布局包上传至服务器。
其中,在所述确定所述程序页面更新后的目标数据后,在所述将所述目标数据编译打包,以得到更新布局包之前,所述方法还包括:从所述程序页面的原始资源包中,获得所述原始资源包包括的各个原始布局文件的布局标识;确定各个所述原始布局文件各自对应的更新布局文件;对所述原始布局文件的布局标识重定向,以使所述布局标识指向所述原始布局文件对应的更新布局文件。
第三方面,本发明实施例提供了一种页面更新装置,应用于移动终端,所述移动终端安装有目标应用程序,且所述移动终端存储有所述目标应用程序的原始资源包,所述原始资源包包括至少一个原始布局文件,所述装置包括:启动单元,用于启动并运行所述目标应用程序;更新单元,用于基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件;查找单元,用于当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件;展示单元,用于在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。
其中,所述展示单元,还用于在未查找到所述目标布局文件的情况下,从所述原始资源包中获取所述程序页面对应的目标布局文件且基于所述目标布局文件展示所述程序页面。
其中,在所述启动并运行所述目标应用程序方面,所述启动单元还用于:启动所述目标应用程序,以得到所述目标应用程序的主进程;将所述目标应用程序关联的原始布局加载器替换为目标布局加载器,所述目标布局加载器用于获得所述程序页面对应的目标布局文件;运行所述目标应用程序的主进程,且生成所述目标布局加载器的执行线程。
其中,在当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件方面,所述启用单元还用于:当所述目标应用程序的运行过程中需展示一程序页面,通过所述主进程向所述执行线程发送所述程序页面对应的目标布局标识;触发所述目标布局加载器的执行线程依据所述目标布局标识,从所述更新布局文件中查找所述程序页面对应的目标布局文件。
其中,在从所述目标应用程序对应的服务器下载更新布局包方面,所述启用单元还用于:触发所述目标布局加载器的执行线程,从所述目标应用程序对应的服务器下载更新布局包。
第四方面,本发明实施例提供了一种页面更新装置,应用于开发终端,所述装置包括:确定单元,用于确定目标应用程序待更新的程序页面;所述确定单元,还用于确定所述程序页面更新后的目标数据,所述目标数据包括至少一个更新布局文件和/或至少一个更新素材数据;处理单元,用于将所述目标数据编译打包,以得到更新布局包;传输单元,用于将所述更新布局包上传至服务器。
其中,在所述确定所述程序页面更新后的目标数据后,在所述将所述目标数据编译打包,以得到更新布局包之前,所述确定单元还包括:从所述程序页面的原始资源包中,获得所述原始资源包包括的各个原始布局文件的布局标识;确定各个所述原始布局文件各自对应的更新布局文件;对所述原始布局文件的布局标识重定向,以使所述布局标识指向所述原始布局文件对应的更新布局文件。
第五方面,本发明实施例提供了一种终端,所述终端包括输入设备和输出设备,所述终端还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如上述第一方面及第二方面任意一方面的步骤。
第六方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如上述第一方面及第二方面任意一方面的步骤。
本发明实施例首先接收到触控指令,首先,移动终端启动并运行所述目标应用程序,其次,基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件,然后,当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件,最后,在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。即使用本发明可以在满足动态更新页面布局的需求的同时,节省了数据传输耗费的网络资源,提高页面更新的高效性和便捷性。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种页面更新系统的架构示意图;
图2a是本发明实施例提供的一种页面更新方法的流程示意图;
图2b是本发明实施例提供的一种页面更新过程中的具体流程图;
图3a是本发明实施例提供的一种页面更新方法的流程示意图;
图3b是本发明实施例提供的一种页面更新过程中的具体流程图;
图4是本发明另一实施例提供的一种页面更新方法的流程示意图;
图5是本发明一种页面更新装置的结构示意图;
图6是本发明另一种页面更新装置的结构示意图;
图7是本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
本发明实施例提出一种页面更新方案,该页面更新方案可运用在终端中,此处的终端可以包括但不限于:智能手机、平板电脑、膝上计算机以及台式电脑等等。终端可根据实际的业务需求,调用相应的应用客户端执行该页面更新方案。
请参阅图1,图1是本申请实施例提供的一种页面更新系统的架构示意图,本发明实施例提供的页面更新方法应用于移动终端,移动终端安装有目标应用程序,且移动终端存储有目标应用程序的原始资源包,原始资源包包括至少一个原始布局文件,方法包括:
启动并运行目标应用程序;
基于目标应用程序自身的触发指令,从目标应用程序对应的服务器下载更新布局包,更新布局包包括至少一个更新布局文件;
当目标应用程序的运行过程中需展示一程序页面,从更新布局文件中查找程序页面对应的目标布局文件;
在查找到目标布局文件的情况下,基于目标布局文件展示程序页面。
举例来说,如图1所示,A用户点击移动终端,触发触控指令,服务器接收到来自目标应用程序的触控指令后,发送该移动终端中目标应用程序对应的第一布局文件,并将第一布局文件在目标应用程序中展示成界面1;同样的,B用户点击移动终端,触发触控指令,服务器接收到来自目标应用程序的触控指令后,发送该移动终端中目标应用程序对应的第二布局文件,并将第二布局文件在目标应用程序中展示成界面2。需要说明的是,本发明中涉及到的“第一”、“第二”等包含有数字的描述,仅仅是为了进行技术特征的区分,并不构成执行顺序上的限定。
如上,服务器中存储有多个布局文件,其中,布局文件可实时更新和替换。
基于上述的描述,本发明实施例提出一种页面更新方法,请参见图2a,该页面更新方法可包括以下步骤S201-S204:
S201,启动并运行目标应用程序。
在一个可能的示例中,启动并运行目标应用程序,包括:启动目标应用程序,以得到目标应用程序的主进程;将目标应用程序关联的原始布局加载器替换为目标布局加载器,目标布局加载器用于获得程序页面对应的目标布局文件;运行目标应用程序的主进程,且生成目标布局加载器的执行线程。
其中,在上述“生成目标布局加载器的执行线程”中,可以在“目标应用程序的运行过程中需展示一程序页面”后执行,也可以在程序启动后该步骤之前的任意时刻执行。
S202,基于目标应用程序自身的触发指令,从目标应用程序对应的服务器下载更新布局包,更新布局包包括至少一个更新布局文件。
其中,上述下载更新布局包可以通过布局加载器下载或是单独开一个线程去下载,此处不做唯一限定。布局包表示的是程序页面发生改变的内容,具体包括更新的布局文件和/或更新的素材数据,素材数据如图片、动画、音频、视频等。布局文件可包括但不限于XML(eXtensible Markup Language,可扩展标记语言)文件。XML文件比Java文件小,使用XML文件不会增大开发者的负担,并减少安装包以及需要下发给用户的新资源包的体积。
S203,当目标应用程序的运行过程中需展示一程序页面,从更新布局文件中查找程序页面对应的目标布局文件。
其中,程序运行过程中,可能需要展示一个程序页面(例如,可能启动展示一页面,也可能是基于用户触发跳转至某个页面,也可能是按照程序的运行逻辑自动需要展示一页面,等等)。发生需要展示一个程序页面的情况时,在程序运行过程中,直接在更新布局包中,查找是否存在该程序页面所需的布局文件,如果存在,表示该程序页面所需的该布局文件被更新了,则直接使用更新的布局文件渲染该程序页面,从而展示的是更新后的程序页面。
S204,在查找到目标布局文件的情况下,基于目标布局文件展示程序页面。
其中,解析目标布局文件成view树,然后渲染并展示程序页面。
一种现有更新方案是,程序启动后下载更新后的资源包至终端,更新后的资源包替换掉原来安装包内的资源包。在程序下次启动后,直接使用更新后的资源包,来更新程序页面。但现有技术存在至少两个缺陷:
1、下载的数据量大,浪费网络资源。
资源包和布局包是两个不同的概念。资源包内不仅包括页面的布局信息,还包括页面布局所需的全部素材如图片等。如果,页面更新具体是,只更新页面布局但素材并未更新,或者仅更新一部分素材的情况下,现有技术会将更新页面所需的所有数据都重新生成资源包,由用户下载更新。
但是,本申请生成的是布局包,布局包表示的是程序页面发生改变的内容,具体包括更新的布局文件和/或更新的素材数据(布局包的这个名词限定补充入说明书)。显然,布局包的数据量小于资源包,这样,数据传输耗费的网络资源较小。
2、更新不及时。
现有技术资源包替换之后,在程序的多次运行过程中,便基于该资源包预设的布局文件展示程序界面,直至用户重新升级下载新的资源包。且,对于某一次下载资源包来说,并不能在本次运行过程中立即生效,需要在下次启动后才能生效更新。可见,现有技术存在更新不及时、覆盖率低的缺陷。
然而,本申请实施例提供的技术方案每次启动应用程序后,自动下载更新布局包,如果服务器没有更新布局包下载为空,并且,在运行过程中需要展示一个程序界面,直接从更新布局包中查找更新的布局文件,基于更新的布局文件渲染程序界面。因此,程序可以及时下载到更新包,且在当前次的运行过程中便可以更新程序页面,进而更新更为及时,且覆盖率较高。
在一种可能的示例中,方法还包括:在未查找到目标布局文件的情况下,从原始资源包中获取程序页面对应的目标布局文件且基于目标布局文件展示程序页面。
在一种可能的示例中,当目标应用程序的运行过程中需展示一程序页面,从更新布局文件中查找程序页面对应的目标布局文件,包括:当目标应用程序的运行过程中需展示一程序页面,通过主进程向执行线程发送程序页面对应的目标布局标识;触发目标布局加载器的执行线程依据目标布局标识,从更新布局文件中查找程序页面对应的目标布局文件。
其中,布局标识可以为索引标识或内容标识,此处不做唯一限定。
可选的,移动终端还包括布局解析模块,将目标布局标识与原始布局标识做相似度比对;若相似度比对一致,则通过布局解析模块对目标布局文件进行解析,得到第一目标视图树;根据第一目标视图树进行界面渲染,并显示渲染后的界面。若相似度比对不一致,则通过布局解析模块对原始布局文件进行解析,得到第二目标视图树;根据第二目标视图树进行界面渲染,并显示渲染后的界面。
如图2b所示,图2b为页面更新过程中的具体流程图。
在一种可能的示例中,从目标应用程序对应的服务器下载更新布局包,包括:触发目标布局加载器的执行线程,从目标应用程序对应的服务器下载更新布局包。目标布局加载器可以是自主研发的布局加载器,也可以是系统内置的布局记载器。
本发明实施例移动终端启动并运行目标应用程序,其次,基于目标应用程序自身的触发指令,从目标应用程序对应的服务器下载更新布局包,更新布局包包括至少一个更新布局文件,然后,当目标应用程序的运行过程中需展示一程序页面,从更新布局文件中查找程序页面对应的目标布局文件,最后,在查找到目标布局文件的情况下,基于目标布局文件展示程序页面。即使用本发明可以在满足动态更新页面布局的需求的同时,节省了数据传输耗费的网络资源,提高页面更新的高效性和便捷性。
基于图1的描述,本发明实施例提出一种页面更新方法,请参见图3a,该页面更新方法应用于开发终端,包括以下步骤S301-S304:
S301,确定目标应用程序待更新的程序页面。
S302,确定程序页面更新后的目标数据,目标数据包括至少一个更新布局文件和/或至少一个更新素材数据。
需要说明的是,在一种具体实现方式中,步骤S302之后以及步骤S303之前,还可以包括:从程序页面的原始资源包中,获得原始资源包包括的各个原始布局文件的布局标识;确定各个原始布局文件各自对应的更新布局文件;对原始布局文件的布局标识重定向,以使所述布局标识指向所述原始布局文件对应的更新布局文件。这样,终端的应用程序在进行程序页面更新时,如果想加载某布局标识对应的布局文件,便可以直接根据重定向的结果,不再加载原始布局文件,而是加载原始布局文件对应的更新布局文件,以实现程序页面的更新。
S303,将目标数据编译打包,以得到更新布局包。
S304,将更新布局包上传至服务器。
其中,上述开发终端为开发人员的开发设备。
其中,开发终端还包括布局索引导出模块,根据布局编译模块对目标数据进行编译打包,得到第一页面布局包;根据布局索引导出模块提取第一页面布局包中的第一页面布局索引信息;根据第一页面布局索引信息与原始页面布局索引信息得到目标安装包;将目标安装包上传服务器。
如图3b所示,图3b为页面更新过程中的具体流程图。
举例来说,若原始页面布局索引信息为{1-A;2-B;3-C;4-D};且当前的第一页面布局索引信息为{1-E;2-B;3-F;4-D};则将原始布局页面索引信息替换为{1-E;2-B;3-F;4-D};并得到目标安装包。需要说明的是,页面布局索引信息中的数值表示索引信息,字母表示布局内容。当然,此种表示形式仅仅是示例说明,在实际应用中还可以是其他能够表示索引信息以及布局内容的形式。
可见,本示例中,灵活地根据替换更新目标数据得到更新布局包,并在编译打包布局包的过程中就根据布局索引表去分配布局索引,达到相同的布局索引的效果。
本发明实施例,开发终端首先确定目标应用程序待更新的程序页面,其次,确定程序页面更新后的目标数据,目标数据包括至少一个更新布局文件和/或至少一个更新素材数据,然后,将目标数据编译打包,以得到更新布局包,最后,将更新布局包上传至服务器。可见,本申请通过处理更新后的目标数据,得到更新布局包,达到动态替换页面布局的效果,提高页面更新的高效性和便捷性,减小开发者负担。
图4是本发明实施例提供的另一种页面更新方法的流程示意图。如图4所示,该页面更新方法可包括以下步骤S401-S408:
S401,移动终端启动并运行目标应用程序。
S402,开发终端确定目标应用程序待更新的程序页面。
S403,开发终端确定程序页面更新后的目标数据,目标数据包括至少一个更新布局文件和/或至少一个更新素材数据;
S404,开发终端将目标数据编译打包,以得到更新布局包;
S405,开发终端将更新布局包上传至服务器。
S406,移动终端基于目标应用程序自身的触发指令,从目标应用程序对应的服务器下载更新布局包。
S407,移动终端当目标应用程序的运行过程中需展示一程序页面,从更新布局文件中查找程序页面对应的目标布局文件;
S408,移动终端在查找到目标布局文件的情况下,基于目标布局文件展示程序页面。
需要说明的是,步骤S401并不局限于步骤S402之前执行,其可以是在步骤S406之前的任何位置顺序执行。有关各个步骤的说明可以参照上述实施例中的相应步骤,此处并不赘述。
基于上述页面更新方法实施例的描述,本发明实施例还公开了一种页面更新装置,所述页面更新装置可以是运行于终端中的一个计算机程序(包括程序代码)。该页面更新装置可以执行图2a或图4所示的方法。请参见图5,应用于移动终端,所述移动终端安装有目标应用程序,且所述移动终端存储有所述目标应用程序的原始资源包,所述原始资源包包括至少一个原始布局文件,所述页面更新装置可以运行如下单元:
启动单元501,用于启动并运行所述目标应用程序;
更新单元502,用于基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件;
查找单元503,用于当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件;
展示单元504,用于在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。
在一种实施方式中,所述展示单元504,还用于在未查找到所述目标布局文件的情况下,从所述原始资源包中获取所述程序页面对应的目标布局文件且基于所述目标布局文件展示所述程序页面。
再一种实施方式中,在所述启动并运行所述目标应用程序方面,所述启动单元501还用于:启动所述目标应用程序,以得到所述目标应用程序的主进程;将所述目标应用程序关联的原始布局加载器替换为目标布局加载器,所述目标布局加载器用于获得所述程序页面对应的目标布局文件;运行所述目标应用程序的主进程,且生成所述目标布局加载器的执行线程。
再一种实施方式中,在当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件方面,所述启用单元501还用于:当所述目标应用程序的运行过程中需展示一程序页面,通过所述主进程向所述执行线程发送所述程序页面对应的目标布局标识;触发所述目标布局加载器的执行线程依据所述目标布局标识,从所述更新布局文件中查找所述程序页面对应的目标布局文件。
再一种实施方式中,在从所述目标应用程序对应的服务器下载更新布局包方面,所述启用单元501还用于:触发所述目标布局加载器的执行线程,从所述目标应用程序对应的服务器下载更新布局包。
根据本发明的一个实施例,图2a所示的方法所涉及的各个步骤均可以是由图5所示的页面更新装置中的各个单元来执行的。例如,图2a中所示的步骤S201及图4中的401可以由图5中所示的启动单元501来执行,步骤S202及图4中的406可由图5中所示的更新单元502来执行;步骤S203及图4中的407可由图5中所示的查找单元503来执行;步骤S204及图4中的408可由图5中所示的展示单元504来执行。
基于上述页面更新方法实施例的描述,本发明实施例还公开了一种页面更新装置,所述页面更新装置可以是运行于终端中的一个计算机程序(包括程序代码)。该页面更新装置可以执行图3a或图4所示的方法。请参见图6,应用于开发终端,所述页面更新装置可以运行如下单元:
确定单元601,用于确定目标应用程序待更新的程序页面;
所述确定单元601,还用于确定所述程序页面更新后的目标数据,所述目标数据包括至少一个更新布局文件和/或至少一个更新素材数据;
处理单元602,用于将所述目标数据编译打包,以得到更新布局包;
传输单元603,用于将所述更新布局包上传至服务器。
在一种实施方式中,在所述确定所述程序页面更新后的目标数据后,在所述将所述目标数据编译打包,以得到更新布局包之前,所述确定单元601还包括:从所述程序页面的原始资源包中,获得所述原始资源包包括的各个原始布局文件的布局标识;确定各个所述原始布局文件各自对应的更新布局文件;对所述原始布局文件的布局标识重定向,以使所述布局标识指向所述原始布局文件对应的更新布局文件。
根据本发明的一个实施例,图3a所示的方法所涉及的各个步骤均可以是由图6所示的页面更新装置中的各个单元来执行的。例如,图3a中所示的步骤S301、S302及图4中的S402、S403可以由图6中所示的确定单元601来执行,步骤S303及图4中的S404可由图6中所示的更新单元602来执行;步骤S304及图4中的405可由图6中所示的传输单元603来执行。
根据本发明的另一个实施例,图5及图6所示的页面更新装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本发明的其它实施例中,基于页面更新装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本发明的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2a或图3a中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图4中所示的页面更新装置设备,以及来实现本发明实施例的页面更新方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
基于上述方法实施例以及装置实施例的描述,本发明实施例还提供一种终端。请参见图7,该终端至少包括处理器701、输入设备702、输出设备703以及计算机存储介质704。其中,终端内的处理器701、输入设备702、输出设备703以及计算机存储介质704可通过总线或其他方式连接。
计算机存储介质704可以存储在终端的存储器中,所述计算机存储介质704用于存储计算机程序,所述计算机程序包括程序指令,所述处理器701用于执行所述计算机存储介质704存储的程序指令。处理器701(或称CPU(Central Processing Unit,中央处理器))是终端的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能;在一个实施例中,本发明实施例所述的处理器701可以用于进行一系列的页面更新处理,包括:接收到触控指令,根据所述触控指令启动目标应用程序;接收来自服务器的目标布局文件,所述目标布局文件用于渲染所述目标应用程序;通过所述布局生成模块加载所述目标布局文件以对所述目标应用程序进行界面渲染,并显示渲染后的界面。
本发明实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器701加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,可由处理器701加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关场景切换实施例中的方法的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器701加载并执行如下步骤:
启动并运行所述目标应用程序;
基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件;
当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件;
在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。
在一种实施方式中,所述处理器701加载并具体执行:在未查找到所述目标布局文件的情况下,从所述原始资源包中获取所述程序页面对应的目标布局文件且基于所述目标布局文件展示所述程序页面。
再一种实施方式中,所述处理器701加载并具体执行:启动所述目标应用程序,以得到所述目标应用程序的主进程;将所述目标应用程序关联的原始布局加载器替换为目标布局加载器,所述目标布局加载器用于获得所述程序页面对应的目标布局文件;运行所述目标应用程序的主进程,且生成所述目标布局加载器的执行线程。
再一种实施方式中,所述处理器701加载并具体执行:当所述目标应用程序的运行过程中需展示一程序页面,通过所述主进程向所述执行线程发送所述程序页面对应的目标布局标识;触发所述目标布局加载器的执行线程依据所述目标布局标识,从所述更新布局文件中查找所述程序页面对应的目标布局文件。
再一种实施方式中,所述处理器701加载并具体执行:触发所述目标布局加载器的执行线程,从所述目标应用程序对应的服务器下载更新布局包。
本发明实施例首先,移动终端启动并运行所述目标应用程序,其次,基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件,然后,当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件,最后,在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。即使用本发明可以在满足动态更新页面布局的需求的同时,节省了数据传输耗费的网络资源,提高页面更新的高效性和便捷性。
在一个实施例中,可由处理器701加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关场景切换实施例中的方法的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器701加载并执行如下步骤:
确定目标应用程序待更新的程序页面;
确定所述程序页面更新后的目标数据,所述目标数据包括至少一个更新布局文件和/或至少一个更新素材数据;
将所述目标数据编译打包,以得到更新布局包;
将所述更新布局包上传至服务器。
在一种实施方式中,所述处理器701加载并具体执行:从所述程序页面的原始资源包中,获得所述原始资源包包括的各个原始布局文件的布局标识;确定各个所述原始布局文件各自对应的更新布局文件;对所述原始布局文件的布局标识重定向,以使所述布局标识指向所述原始布局文件对应的更新布局文件。
本发明实施例,开发终端首先确定目标应用程序待更新的程序页面,其次,确定所述程序页面更新后的目标数据,所述目标数据包括至少一个更新布局文件和/或至少一个更新素材数据,然后,将所述目标数据编译打包,以得到更新布局包,最后,将所述更新布局包上传至服务器。可见,本申请通过处理更新后的目标数据,得到更新布局包,达到动态替换页面布局的效果,提高页面更新的高效性和便捷性,减小开发者负担。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (11)
1.一种页面更新方法,其特征在于,应用于移动终端,所述移动终端安装有目标应用程序,且所述移动终端存储有所述目标应用程序的原始资源包,所述原始资源包包括至少一个原始布局文件,所述方法包括:
启动并运行所述目标应用程序;
基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件;
当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件;
在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在未查找到所述目标布局文件的情况下,从所述原始资源包中获取所述程序页面对应的目标布局文件且基于所述目标布局文件展示所述程序页面。
3.根据权利要求1所述的方法,其特征在于,所述启动并运行所述目标应用程序,包括:
启动所述目标应用程序,以得到所述目标应用程序的主进程;
将所述目标应用程序关联的原始布局加载器替换为目标布局加载器,所述目标布局加载器用于获得所述程序页面对应的目标布局文件;
运行所述目标应用程序的主进程,且生成所述目标布局加载器的执行线程。
4.根据权利要求3所述的方法,其特征在于,当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件,包括:
当所述目标应用程序的运行过程中需展示一程序页面,通过所述主进程向所述执行线程发送所述程序页面对应的目标布局标识;
触发所述目标布局加载器的执行线程依据所述目标布局标识,从所述更新布局文件中查找所述程序页面对应的目标布局文件。
5.根据权利要求3所述的方法,其特征在于,从所述目标应用程序对应的服务器下载更新布局包,包括:
触发所述目标布局加载器的执行线程,从所述目标应用程序对应的服务器下载更新布局包。
6.一种页面更新方法,其特征在于,应用于开发终端,所述方法包括:
确定目标应用程序待更新的程序页面;
确定所述程序页面更新后的目标数据,所述目标数据包括至少一个更新布局文件和/或至少一个更新素材数据;
将所述目标数据编译打包,以得到更新布局包;
将所述更新布局包上传至服务器。
7.根据权利要求6所述的方法,其特征在于,在所述确定所述程序页面更新后的目标数据后,在所述将所述目标数据编译打包,以得到更新布局包之前,所述方法还包括:
从所述程序页面的原始资源包中,获得所述原始资源包包括的各个原始布局文件的布局标识;
确定各个所述原始布局文件各自对应的更新布局文件;
对所述原始布局文件的布局标识重定向,以使所述布局标识指向所述原始布局文件对应的更新布局文件。
8.一种页面更新装置,其特征在于,应用于移动终端,所述移动终端安装有目标应用程序,且所述移动终端存储有所述目标应用程序的原始资源包,所述原始资源包包括至少一个原始布局文件,所述装置包括:
启动单元,用于启动并运行所述目标应用程序;
更新单元,用于基于所述目标应用程序自身的触发指令,从所述目标应用程序对应的服务器下载更新布局包,所述更新布局包包括至少一个更新布局文件;
查找单元,用于当所述目标应用程序的运行过程中需展示一程序页面,从所述更新布局文件中查找所述程序页面对应的目标布局文件;
展示单元,用于在查找到所述目标布局文件的情况下,基于所述目标布局文件展示所述程序页面。
9.一种页面更新装置,其特征在于,应用于开发终端,所述装置包括:
确定单元,用于确定目标应用程序待更新的程序页面;
所述确定单元,还用于确定所述程序页面更新后的目标数据,所述目标数据包括至少一个更新布局文件和/或至少一个更新素材数据;
处理单元,用于将所述目标数据编译打包,以得到更新布局包;
传输单元,用于将所述更新布局包上传至服务器。
10.一种终端,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-5或6-7任一项所述的页面更新方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序指令,所述计算机程序指令适于由处理器加载并执行如权利要求1-7任一项所述的页面更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010756464.0A CN111930455A (zh) | 2020-07-29 | 2020-07-29 | 页面更新方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010756464.0A CN111930455A (zh) | 2020-07-29 | 2020-07-29 | 页面更新方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111930455A true CN111930455A (zh) | 2020-11-13 |
Family
ID=73314939
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010756464.0A Pending CN111930455A (zh) | 2020-07-29 | 2020-07-29 | 页面更新方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111930455A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113825008A (zh) * | 2021-11-24 | 2021-12-21 | 飞狐信息技术(天津)有限公司 | 活动页面的展现方法和装置 |
CN114911564A (zh) * | 2022-06-16 | 2022-08-16 | 北京有竹居网络技术有限公司 | 一种页面移动处理方法、装置、设备和存储介质 |
-
2020
- 2020-07-29 CN CN202010756464.0A patent/CN111930455A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113825008A (zh) * | 2021-11-24 | 2021-12-21 | 飞狐信息技术(天津)有限公司 | 活动页面的展现方法和装置 |
CN114911564A (zh) * | 2022-06-16 | 2022-08-16 | 北京有竹居网络技术有限公司 | 一种页面移动处理方法、装置、设备和存储介质 |
CN114911564B (zh) * | 2022-06-16 | 2023-08-22 | 北京有竹居网络技术有限公司 | 一种页面移动处理方法、装置、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107305553B (zh) | 一种基于Hybrid App中动态跳转Hybrid页面的方法及系统 | |
US11016785B2 (en) | Method and system for mirror image package preparation and application operation | |
CN111049870B (zh) | 应用下载和发送的方法、装置及系统 | |
CN111324421B (zh) | 一种容器镜像的提供方法、加载方法及相关设备和系统 | |
EP3848798A1 (en) | Information processing method and apparatus, storage medium, and electronic device | |
CN108647032B (zh) | 应用加载方法及装置、计算机装置和计算机可读存储介质 | |
CN111930455A (zh) | 页面更新方法、装置、终端及存储介质 | |
CN112631622A (zh) | 应用安装方法、装置、服务器及计算机可读介质 | |
CN110113391B (zh) | 一种客户端上线方法、装置及一种客户端运行方法、装置 | |
CN111459497A (zh) | 基于webpack的资源包编译方法、系统、服务器和存储介质 | |
CN110020370B (zh) | 在客户端应用中实现动画的方法、装置及动画脚本的框架 | |
CN112235132B (zh) | 动态配置服务的方法、装置、介质以及服务器 | |
CN107092472B (zh) | 一种动态发布方法及设备 | |
US10552135B1 (en) | Reducing a size of an application package | |
CN113608742A (zh) | 检测方法、代码包处理方法、运行控制方法及计算设备 | |
CN111273965B (zh) | 一种容器应用启动方法、系统、装置及电子设备 | |
EP3748493B1 (en) | Method and device for downloading installation-free application | |
CN115878226A (zh) | 一种h5离线包加载方法及装置 | |
CN116401003A (zh) | 基于桌面操作系统的安卓应用运行方法、系统及存储介质 | |
CN115794637A (zh) | 自动化测试的方法、装置、设备和计算机可读介质 | |
CN116069366A (zh) | 客户端应用程序更新方法及装置、存储介质及电子设备 | |
CN114860202A (zh) | 项目运行方法、装置、服务器及存储介质 | |
CN115328526A (zh) | 一种依赖包的更新方法、装置、设备及存储介质 | |
CN113157348A (zh) | 游戏启动方法、装置、计算机设备以及存储介质 | |
CN113656439A (zh) | 数据查询方法及装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |