CN111475171B - 应用程序组件下载方法、装置、电子设备 - Google Patents
应用程序组件下载方法、装置、电子设备 Download PDFInfo
- Publication number
- CN111475171B CN111475171B CN201910063693.1A CN201910063693A CN111475171B CN 111475171 B CN111475171 B CN 111475171B CN 201910063693 A CN201910063693 A CN 201910063693A CN 111475171 B CN111475171 B CN 111475171B
- Authority
- CN
- China
- Prior art keywords
- local
- application program
- application
- component
- supporting
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004891 communication Methods 0.000 claims description 18
- 238000013500 data storage Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Abstract
本发明实施例提供了一种应用程序组件下载方法、装置、电子设备及计算机存储介质。其中,应用程序组件下载方法包括:根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件;若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。通过本发明实施例,能够提升应用程序组件下载可靠性。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种应用程序组件下载方法、装置、电子设备及计算机存储介质。
背景技术
随着技术的发展,应用程序的功能越来越丰富,同时也使得应用程序的体积(size)越来越大。为了减小应用程序的体积,一种方案是将其中的部分功能分割出来形成独立组件,不将独立组件打包进应用程序中。
现有技术中,一些独立组件的功能具有通用性,使得一个设备中的多个应用程序使用同一独立组件,每个应用程序均需要通过网络下载的方式下载所需的独立组件。但是,这种网络下载方式存在着下载耗时、到达率无法保证等问题,影响了应用程序运行的可靠性和性能。
发明内容
有鉴于此,本发明实施例提供一种应用程序组件下载方案,以解决上述部分或全部问题。
根据本发明实施例的第一方面,提供了一种应用程序组件下载方法,包括:根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件;若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。
根据本发明实施例的第二方面,提供了一种应用程序组件下载装置,包括:判断模块,用于根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件;下载模块,用于若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。
根据本发明实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的应用程序组件下载方法对应的操作。
根据本发明实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的应用程序组件下载方法。
根据本发明实施例提供的应用程序组件下载方案,根据应用程序业务需求访问本地端,并判断其中是否存储有可支持所述业务需求的应用程序组件。若存在,则访问本地端,并下载支持业务需求的应用程序组件。这样可以通过本地下载的方式替代现有技术中的网络下载应用程序组件的方式,提升下载速度、确保下载的到达率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为根据本发明实施例一的一种应用程序组件下载方法的步骤流程图;
图2为根据本发明实施例二的一种应用程序组件下载方法的步骤流程图;
图3为根据本发明实施例三的一种应用程序组件下载装置的结构框图;
图4为根据本发明实施例四的一种应用程序组件下载装置的结构框图;
图5为根据本发明实施例五的一种电子设备的结构示意图;
图6为本发明一使用场景中服务APP创建本地端的流程示意图;
图7为本发明一使用场景中客户APP通过本地端获取应用程序组件的流程示意图;
图8为本发明一使用场景中本地云服务与应用程序交互的示意图。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
下面结合本发明实施例附图进一步说明本发明实施例具体实现。
实施例一
参照图1,示出了根据本发明实施例一的一种应用程序组件下载方法的步骤流程图。
本实施例的应用程序组件下载方法包括以下步骤:
步骤S102:根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件。
本地端设置在应用程序所在设备的本地,用于供所述应用程序根据业务需求进行访问,其中可以存储应用程序组件,且支持所述应用程序通过访问所述本地端,下载或写入所述应用程序组件。
所述应用程序组件用于支持应用程序的业务需求,不同的应用程序组件可以支持不同的业务需求,如内核组件用于支持应用程序的页面渲染的业务需求。
本实施例中,应用程序组件可以是任何应用程序在启动或者运行过程中需要动态方式获取的组件。
例如,所述应用程序组件是为了减小应用程序本身的体积(size),未直接打包到应用程序的安装包中,独立于应用程序的独立组件。应用程序可以通过动态方案获取所述应用程序组件。
本领域技术人员可以根据需要,采用任何与需求匹配的方式确定所述本地端上是否存储有可支持所述业务需求的应用程序组件,本实施例对此不作限定。
例如,根据业务需求确定可支持其的应用程序组件的标识,在本地端查找是否有与所述标识匹配的应用程序独立组件,若查找到则确定存在可支持所述业务需求的应用程序组件;反之,则确定不存在。
又例如,在本地端配置有其存储的应用程序组件记录,所述应用程序记录用于指示存储的应用程序组件与支持的业务需求。根据所述应用程序组件记录确定本地端是否存储有支持某一应用程序的某一业务需求的应用程序组件。若确定存在,则执行步骤S104;反之,若确定不存在,则应用程序可以根据需要,使用网络下载方式或其他适当方式下载应用程序组件。
步骤S104:若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。
若确定存储有可支持所述业务需求的应用程序组件,则应用程序可以从所述本地端下载对应的应用程序组件。由于可以从所述本地端下载应用程序组件,使得下载时,只需要在设备内部进行通信,相比现有技术中的网络下载可以确保到达率,使得下载稳定性更高,且下载的效率更高,有助于提升应用程序运行的可靠性和启动速度。
在一具体实现中,所述步骤S104具体为:若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端,并动态下载所述支持所述业务需求的应用程序组件。这样可以满足应用程序对应用程序组件的动态下载需求,使本地端的适应性更好,进而有助于提升应用程序启动或运行的稳定性。
通过本实施例,根据应用程序业务需求访问本地端,并判断其中是否存储有可支持所述业务需求的应用程序组件。若存在,则访问本地端,并下载支持业务需求的应用程序组件。这样可以通过本地下载的方式替代现有技术中的网络下载应用程序组件的方式,提升下载速度、确保下载的到达率。
本实施例的应用程序组件下载方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机等。
实施例二
参照图2,示出了根据本发明实施例二的一种应用程序组件下载方法的步骤流程图。
本实施例的应用程序组件下载方法包括前述步骤S102~S104。
其中,在步骤S102之前,所述方法还包括:
步骤S100:根据预设的本地端共享协议创建所述本地端,并将至少一应用程序组件存储至创建的所述本地端。
本地端共享协议用于创建和维护所述本地端。例如,所述本地端共享协议中定义了下列至少之一:创建规则、访问权限规则、数据存储规则及数据安全校验规则等。
所述本地端共享协议可以预设到应用程序中,或者在需要时,通过有线传输、无线网络下载或者无线近场传输等方式传输到所述应用程序所在的设备上,本实施对此不作限定。
应用程序或者其他执行主体,可以在需要时,根据所述本地端共享协议创建所述本地端,并将至少一应用程序组件存储至创建的所述本地端。
例如,所述步骤S100包括以下子步骤:
子步骤S1001:根据所述本地端共享协议,注册与所述本地端对应的本地存储路径,并完成所述本地端的创建。
由于所述本地端需要存储应用程序组件,因此在创建所述本地端时,根据本地端共享协议,注册与所述本地端对应的本地存储路径,以供所述本地端进行数据存储。
根据需要在创建本地端时,还可以根据所述本地端共享协议执行匹配的过程,以完成所述本地端的创建,本实施例对此不作限定。
子步骤S1002:将至少一应用程序组件存储至与所述本地端对应的本地存储路径下。
在创建路径后,应用程序可以将至少一应用程序组件存储至与所述本地端对应的本地存储路径下,以供后续使用。
这种通过注册对应的本地存储路径的方式创建的所述本地端,由于其对应的本地存储路径是根据本地端共享协议确定的,有助于支持多应用程序访问,只要是使用所述本地端共享协议的应用程序均可以方便地确定所述本地端的本地存储路径。
此外,在同一设备上的不同应用程序可以根据所述本地存储路径是否被注册,确定所述设备上是否已经创建了本地端,使得本地端是否创建的验证更加方便。
在本实施例中,所述应用程序组件为可支持至少两个应用程序业务需求的共享组件。
例如,针对同一开发者开发的多个不同的应用程序,不同的应用程序可能使用同一个应用程序组件支持其业务需求,这种应用程序组件即为共享组件。
为了提升不同应用程序间的应用程序组件的共享,所述本地端为用于供至少两个应用程序根据业务需求进行访问的本地云服务。
由于该本地云服务可以支持多个应用程序进行访问,因而可以满足至少两个应用程序间应用程序组件共享的需求。针对使用同一应用程序组件的多个不同的应用程序,其均可以从本地云服务中获取需要的应用程序组件,解决了现有技术中,使用同一应用程序组件的不同的应用程序,需要独立地通过网络下载方式下载各自的应用程序组件的问题。
通过本实施例,在创建本地端时,注册与其对应的本地存储路径,一方面,便于不同的应用程序根据本地端共享协议创建本地端,另一方面,便于不同的应用程序检测是否存在所述本地端,使不同的应用程序均可以方便快捷的根据本地端共享协议访问本地端。
此外,本地端为一种本地云服务,其中存储有对至少两个应用程序的业务需求进行支持的共享组件,使得不同的应用程序均可以通过本地端获取能够对其业务需求进行支持的应用程序组件,通过一个本地云服务能够降低多个使用共享组件的应用程序在动态下载该共享组件时的性能消耗,且提升了下载稳定性。
本实施例的应用程序组件下载方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机等。
实施例三
参照图3,示出了根据本发明实施例三的一种应用程序组件下载装置的结构框图。
本实施例的应用程序下载装置包括判断模块302和下载模块304。
其中,所述判断模块302,用于根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件。
本地端设置在应用程序所在设备的本地,用于供所述应用程序根据业务需求进行访问,其中可以存储应用程序组件,且支持所述应用程序通过访问所述本地端,下载或写入所述应用程序组件。
所述应用程序组件用于支持应用程序的业务需求,不同的应用程序组件可以支持不同的业务需求,如内核组件用于支持应用程序的页面渲染的业务需求。
本实施例中,应用程序组件可以是任何应用程序在启动或者运行过程中需要动态方式获取的组件。
例如,所述应用程序组件是为了减小应用程序本身的体积(size),未直接打包到应用程序的安装包中,独立于应用程序的独立组件。应用程序可以通过动态方案获取所述应用程序组件。
本领域技术人员可以根据需要,采用任何与需求匹配的方式确定所述本地端上是否存储有可支持所述业务需求的应用程序组件,本实施例对此不作限定。
例如,根据业务需求确定可支持其的应用程序组件的标识,在本地端查找是否有与所述标识匹配的应用程序独立组件,若查找到则确定存在可支持所述业务需求的应用程序组件;反之,则确定不存在。
又例如,在本地端配置有其存储的应用程序组件记录,所述应用程序记录用于指示存储的应用程序组件与支持的业务需求。根据所述应用程序组件记录确定本地端是否存储有支持某一应用程序的某一业务需求的应用程序组件。若确定存在,则通过下载模块304进行下载;反之,若确定不存在,则应用程序可以根据需要,使用网络下载方式或其他适当方式下载应用程序组件。
下载模块304,用于若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。
若确定存储有可支持所述业务需求的应用程序组件,则应用程序可以从所述本地端下载对应的应用程序组件。由于可以从所述本地端下载应用程序组件,使得下载时,只需要在设备内部进行通信,相比现有技术中的网络下载可以确保到达率,使得下载稳定性更高,且下载的效率更高,有助于提升应用程序运行的可靠性和启动速度。
在一具体实现中,所述下载模块304用于:若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端,并动态下载所述支持所述业务需求的应用程序组件。这样可以满足应用程序对应用程序组件的动态下载需求,使本地端的适应性更好,进而有助于提升应用程序启动或运行的稳定性。
通过本实施例,根据应用程序业务需求访问本地端,并判断其中是否存储有可支持所述业务需求的应用程序组件。若存在,则访问本地端,并下载支持业务需求的应用程序组件。这样可以通过本地下载的方式替代现有技术中的网络下载应用程序组件的方式,提升下载速度、确保下载的到达率。
实施例四
参照图4,示出了根据本发明实施例四的一种应用程序组件下载装置的结构框图。
本实施例的应用程序组件下载装置包括前述的判断模块302和下载模块304。
可选地,所述装置还包括:创建模块300,用于在所述判断模块302根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件之前,根据预设的本地端共享协议创建所述本地端,并将至少一应用程序组件存储至创建的所述本地端。
本地端共享协议用于创建和维护所述本地端。例如,所述本地端共享协议中定义了下列至少之一:创建规则、访问权限规则、数据存储规则及数据安全校验规则等。
所述本地端共享协议可以预设到应用程序中,或者在需要时,通过有线传输、无线网络下载或者无线近场传输等方式传输到所述应用程序所在的设备上,本实施对此不作限定。
应用程序或者其他执行主体,可以在需要时,根据所述本地端共享协议创建所述本地端,并将至少一应用程序组件存储至创建的所述本地端。
可选地,所述创建模块300包括注册模块3001和存储模块3002。
其中,注册模块3001,用于根据所述本地端共享协议,注册与所述本地端对应的本地存储路径,并完成所述本地端的创建。
由于所述本地端需要存储应用程序组件,因此在创建所述本地端时,根据本地端共享协议,注册与所述本地端对应的本地存储路径,以供所述本地端进行数据存储。
根据需要在创建本地端时,还可以根据所述本地端共享协议执行匹配的过程,以完成所述本地端的创建,本实施例对此不作限定。
存储模块3002,用于将至少一应用程序组件存储至与所述本地端对应的本地存储路径下。
在创建路径后,应用程序可以将至少一应用程序组件存储至与所述本地端对应的本地存储路径下,以供后续使用。
这种通过注册对应的本地存储路径的方式创建的所述本地端,由于其对应的本地存储路径是根据本地端共享协议确定的,有助于支持多应用程序访问,只要是使用所述本地端共享协议的应用程序均可以方便地确定所述本地端的本地存储路径。
此外,在同一设备上的不同应用程序可以根据所述本地存储路径是否被注册,确定所述设备上是否已经创建了本地端,使得本地端是否创建的验证更加方便。
可选地,所述应用程序组件为可支持至少两个应用程序业务需求的共享组件。
例如,针对同一开发者开发的多个不同的应用程序,不同的应用程序可能使用同一个应用程序组件支持其业务需求,这种应用程序组件即为共享组件。
可选地,为了提升不同应用程序间的应用程序组件的共享,所述本地端为用于供至少两个应用程序根据业务需求进行访问的本地云服务。
由于该本地云服务可以支持多个应用程序进行访问,因而可以满足至少两个应用程序间应用程序组件共享的需求。针对使用同一应用程序组件的多个不同的应用程序,其均可以从本地云服务中获取需要的应用程序组件,解决了现有技术中,使用同一应用程序组件的不同的应用程序,需要独立地通过网络下载方式下载各自的应用程序组件的问题。
通过本实施例,在创建本地端时,注册与其对应的本地存储路径,一方面,便于不同的应用程序根据本地端共享协议创建本地端,另一方面,便于不同的应用程序检测是否存在所述本地端,使不同的应用程序均可以方便快捷的根据本地端共享协议访问本地端。
此外,本地端为一种本地云服务,其中存储有对至少两个应用程序的业务需求进行支持的共享组件,使得不同的应用程序均可以通过本地端获取能够对其业务需求进行支持的应用程序组件,通过一个本地云服务能够降低多个使用共享组件的应用程序在动态下载该共享组件时的性能消耗,且提升了下载稳定性。
实施例五
参照图5,示出了根据本发明实施例五的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图5所示,该电子设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:
处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。
通信接口504,用于与其它电子设备如终端设备或服务器进行通信。
处理器502,用于执行程序510,具体可以执行上述下载应用的方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以用于使得处理器502执行以下操作:根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件;若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。
在一种可选的实施方式中,程序510还用于使得处理器502在根据应用程序业务需求访问本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件之前,根据预设的本地端共享协议创建所述本地端,并将至少一应用程序组件存储至创建的所述本地端。
在一种可选的实施方式中,程序510还用于使得处理器502在根据预设的本地端共享协议创建所述本地端,并将至少一应用程序组件存储至创建的所述本地端时,根据所述本地端共享协议,注册与所述本地端对应的本地存储路径,并完成所述本地端的创建;将至少一应用程序组件存储至与所述本地端对应的本地存储路径下。
在一种可选的实施方式中,所述应用程序组件为可支持至少两个应用程序业务需求的共享组件。
在一种可选的实施方式中,所述本地端为用于供至少两个应用程序根据业务需求进行访问的本地云服务。
在一种可选的实施方式中,程序510还用于使得处理器502在所述若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件时,若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端,并动态下载所述支持所述业务需求的应用程序组件。
程序510中各步骤的具体实现可以参见上述应用程序组件下载方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
通过本实施例的电子设备,根据待下载应用的图标,从预存的相关数据或信息中获取对应的下载地址,即可从该下载地址下载应用。与现有的自行查找的方式相比,简化了用户操作,大大减轻了用户操作负担,提高了应用下载效率;与现有的通过二维码扫描的方式相比,即使图标不完整或有部分信息缺失,只要可进行识别的主要部分存在,即可识别出该图标对应的应用,进而获取该应用的下载地址进行下载,同样有效提高了应用下载效率。
需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的应用程序组件下载方法。此外,当通用计算机访问用于实现在此示出的应用程序组件下载方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的应用程序组件下载方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。
使用场景:
如图6和7所示,在本使用场景中,以Android操作系统为例,对应用程序组件的下载过程进行说明。
如图8所示,在Android操作系统中创建本地端后,应用程序(图中APP_1~APP_6)可以与本地端进行交互,从本地端中读取应用程序组件或写入应用程序组件。
在Android操作系统中的任一一个使用本地端共享协议的应用程序均可以作为服务APP创建本地端。如图6所示,本地端的创建过程为:
步骤A:检测当前设备上是否存在本地端。例如,通过检测本地端共享协议中规则的本地存储路径是否被注册,确定本地端是否存在。若被注册,则确定本地端存在,执行步骤B;反之,则确定本地端不存在,执行步骤C。
步骤B:根据本地端共享协议,将获取的至少一应用程序组件(如内核组件)存储到本地端中。
需要说明的是,根据不同的本地端共享协议,服务APP可以采用不同的方式向本地端存储应用程序组件。例如,服务APP在存入应用程序组件之前可以先确定本地端中是否已经存在了该应用程序组件,若不存在,再存入;若存在,则可以跳过该应用程序组件。又例如,服务APP可以直接将应用程序组件存储本地端。
步骤C:根据本地端共享协议创建本地端,并将至少一应用程序组件存入本地端。
如图7所示,客户APP访问本地端的过程为:
步骤D:客户APP根据业务需求,访问本地端,确定本地端中是否存储有支持该业务需求的应用程序组件。若存储有,则执行步骤E;反之,则执行步骤F。
步骤E:从本地端获取应用程序组件。需要说明的是,根据不同的本地端共享协议,客户APP可以采用匹配的方式获取应用程序组件。例如,可以将应用程序组件从本地端下载到应用程序对应的存储路径下。
若未能获取应用程序组件,则可以执行步骤F。
步骤F:若未存储有应用程序组件或未能成功获取应用程序组件,则可以通过网络下载的方式获取应用程序组件,并可以根据本地端共享协议,将下载的应用程序组件存入本地端或不存入本地端。
本使用场景中的应用程序组件下载方法,可以将应用程序中的部分功能切割出来,形成独立的应用程序组件,解决了现有技术中,将应用程序组件直接打包集成到应用程序中会给集成的应用程序增加很大体积的问题。此外,还可以解决现有的应用程序组件需要采用网络下载方案,导致性能消耗大,而且到达率无法保证的问题。
采用该应用程序组件下载方法,尤其适用于为多个应用程序提供业务需求支持的应用程序组件。由于多个应用程序中均使用了同一个应用程序组件,因此,由多个应用程序在设备上共同构建维护一个本地端(本地云服务),通过从本地端动态下载应用程序组件,可以解决网络下载存在的耗时、到达率无法保证的缺陷。显然,通过本方法,发明本地端概念,把部分网络业务移到本地,应用程序从本地端动态下载应用程序组件时的性能消耗只是本地I/O(input/output)访问的消耗,且相比网络下载更加高效稳定。
此外,该本地端概念不仅仅能优化应用程序组件动态下载性能,也可以服务大多动态业务,例如,业务预热需要提前获取一些资源。
需要说明的是,本使用场景中的服务APP也可以是客户APP,客户APP也可以作为服务APP。
Claims (10)
1.一种应用程序组件下载方法,其特征在于,包括:
根据本地端共享协议,注册与所述本地端对应的本地存储路径,并完成所述本地端的创建,所述本地端共享协议定义了创建规则、访问权限规则、数据存储规则及数据安全校验规则中的至少一者;
将至少一应用程序组件存储至与所述本地端对应的本地存储路径下,所述至少一个应用程序组件用于不同应用程序支持所述至少一个应用程序组件的业务需求;
根据应用程序业务需求访问所述本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件;
若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。
2.根据权利要求1所述的方法,其特征在于,所述应用程序组件为可支持至少两个应用程序业务需求的共享组件。
3.根据权利要求1或2所述的方法,其特征在于,所述本地端为用于供至少两个应用程序根据业务需求进行访问的本地云服务。
4.根据权利要求1所述的方法,其特征在于,所述若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件具体为:
若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端,并动态下载所述支持所述业务需求的应用程序组件。
5.一种应用程序组件下载装置,其特征在于,包括:
创建模块,包括:
注册模块,用于根据本地端共享协议,注册与所述本地端对应的本地存储路径,并完成所述本地端的创建;
存储模块,用于将至少一应用程序组件存储至与所述本地端对应的本地存储路径下,所述至少一个应用程序组件用于不同应用程序支持所述至少一个应用程序组件的业务需求;
判断模块,用于根据应用程序业务需求访问所述本地端,判断所述本地端是否存储有可支持所述业务需求的应用程序组件;
下载模块,用于若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端下载所述支持所述业务需求的应用程序组件。
6.根据权利要求5所述的装置,其特征在于,所述应用程序组件为可支持至少两个应用程序业务需求的共享组件。
7.根据权利要求5或6所述的装置,其特征在于,所述本地端为用于供至少两个应用程序根据业务需求进行访问的本地云服务。
8.根据权利要求5所述的装置,其特征在于,所述下载模块用于若所述本地端存储有可支持所述业务需求的应用程序组件,则访问所述本地端,并动态下载所述支持所述业务需求的应用程序组件。
9.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-4中任一项所述的应用程序组件下载方法对应的操作。
10.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-4中任一所述的应用程序组件下载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910063693.1A CN111475171B (zh) | 2019-01-23 | 2019-01-23 | 应用程序组件下载方法、装置、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910063693.1A CN111475171B (zh) | 2019-01-23 | 2019-01-23 | 应用程序组件下载方法、装置、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111475171A CN111475171A (zh) | 2020-07-31 |
CN111475171B true CN111475171B (zh) | 2024-04-12 |
Family
ID=71743352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910063693.1A Active CN111475171B (zh) | 2019-01-23 | 2019-01-23 | 应用程序组件下载方法、装置、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111475171B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252585A (zh) * | 2007-05-08 | 2008-08-27 | 飞塔信息科技(北京)有限公司 | 对使用远程文件系统访问协议的数据进行内容过滤的方法与系统 |
CN102135892A (zh) * | 2010-01-22 | 2011-07-27 | 北京金山数字娱乐科技有限公司 | 应用程序运行方法、装置及系统 |
CN103645925A (zh) * | 2013-12-27 | 2014-03-19 | 北界创想(北京)软件有限公司 | 在移动终端操作系统中运行页面应用的方法及装置 |
CN105094922A (zh) * | 2015-08-17 | 2015-11-25 | 北京奇虎科技有限公司 | 应用程序免安装运行控制方法及其装置 |
CN106686420A (zh) * | 2016-12-09 | 2017-05-17 | 广州华多网络科技有限公司 | 直播应用程序的管理方法及装置 |
CN106909406A (zh) * | 2015-12-23 | 2017-06-30 | 北京奇虎科技有限公司 | 一种加载应用程序的apk插件的方法及装置 |
CN107025117A (zh) * | 2016-01-29 | 2017-08-08 | 上海卓易科技股份有限公司 | 插件的加载方法及其系统 |
CN107145365A (zh) * | 2017-04-06 | 2017-09-08 | 北京奇虎科技有限公司 | 生成应用程序安装包的方法、加载应用程序的方法及装置 |
CN107608674A (zh) * | 2017-09-22 | 2018-01-19 | 深圳市创维软件有限公司 | 一种应用换肤方法、装置、计算机及存储介质 |
CN107645521A (zh) * | 2016-07-21 | 2018-01-30 | 平安科技(深圳)有限公司 | 功能组件安装方法、终端及服务器 |
CN107748662A (zh) * | 2017-11-17 | 2018-03-02 | 深圳市泉眼网络科技有限公司 | 应用程序开发方法、终端及计算机可读存储介质 |
CN108132844A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 插件下载方法及装置 |
CN108334360A (zh) * | 2017-07-12 | 2018-07-27 | 深圳市小牛在线互联网信息咨询有限公司 | 应用程序动态加载的方法、装置、存储介质和计算机设备 |
CN108958759A (zh) * | 2017-05-24 | 2018-12-07 | 大唐移动通信设备有限公司 | 一种存储软件包的方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110223995A1 (en) * | 2010-03-12 | 2011-09-15 | Kevin Geisner | Interacting with a computer based application |
CN106033398A (zh) * | 2015-03-13 | 2016-10-19 | 联发科技(新加坡)私人有限公司 | 数据处理系统、外接装置启动方法以及数据处理方法 |
-
2019
- 2019-01-23 CN CN201910063693.1A patent/CN111475171B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252585A (zh) * | 2007-05-08 | 2008-08-27 | 飞塔信息科技(北京)有限公司 | 对使用远程文件系统访问协议的数据进行内容过滤的方法与系统 |
CN102135892A (zh) * | 2010-01-22 | 2011-07-27 | 北京金山数字娱乐科技有限公司 | 应用程序运行方法、装置及系统 |
CN103645925A (zh) * | 2013-12-27 | 2014-03-19 | 北界创想(北京)软件有限公司 | 在移动终端操作系统中运行页面应用的方法及装置 |
CN105094922A (zh) * | 2015-08-17 | 2015-11-25 | 北京奇虎科技有限公司 | 应用程序免安装运行控制方法及其装置 |
CN106909406A (zh) * | 2015-12-23 | 2017-06-30 | 北京奇虎科技有限公司 | 一种加载应用程序的apk插件的方法及装置 |
CN107025117A (zh) * | 2016-01-29 | 2017-08-08 | 上海卓易科技股份有限公司 | 插件的加载方法及其系统 |
CN107645521A (zh) * | 2016-07-21 | 2018-01-30 | 平安科技(深圳)有限公司 | 功能组件安装方法、终端及服务器 |
CN108132844A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 插件下载方法及装置 |
CN106686420A (zh) * | 2016-12-09 | 2017-05-17 | 广州华多网络科技有限公司 | 直播应用程序的管理方法及装置 |
CN107145365A (zh) * | 2017-04-06 | 2017-09-08 | 北京奇虎科技有限公司 | 生成应用程序安装包的方法、加载应用程序的方法及装置 |
CN108958759A (zh) * | 2017-05-24 | 2018-12-07 | 大唐移动通信设备有限公司 | 一种存储软件包的方法及装置 |
CN108334360A (zh) * | 2017-07-12 | 2018-07-27 | 深圳市小牛在线互联网信息咨询有限公司 | 应用程序动态加载的方法、装置、存储介质和计算机设备 |
CN107608674A (zh) * | 2017-09-22 | 2018-01-19 | 深圳市创维软件有限公司 | 一种应用换肤方法、装置、计算机及存储介质 |
CN107748662A (zh) * | 2017-11-17 | 2018-03-02 | 深圳市泉眼网络科技有限公司 | 应用程序开发方法、终端及计算机可读存储介质 |
Non-Patent Citations (2)
Title |
---|
李宝智 ; .Windows智能设备应用程序的数据存储方法.现代计算机(专业版).2008,(第02期),全文. * |
杨建宇,杨崇俊,刘冬林,明冬萍.基于组件的WebGIS关键技术研究.小型微型计算机系统.2005,(第06期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111475171A (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2613531C2 (ru) | Способ совместного доступа к файлам, терминал и сервер ретрансляции | |
US10599413B2 (en) | Method and device for identifying file | |
CN109496418B (zh) | 文件下载方法、装置及设备/终端/服务器 | |
CN109462601B (zh) | 基于eSIM的多平台访问方法及装置 | |
CN107015870B (zh) | 实现web页面与本地应用通信的方法、装置和电子设备 | |
CN110780930B (zh) | 启动Android系统的方法、装置、电子设备及存储介质 | |
CN109587252A (zh) | 运营商参数的加载方法、装置、电子设备及存储介质 | |
CN112165482B (zh) | 数据处理方法、装置、计算机设备及介质 | |
US20150363182A1 (en) | Smart device, wearable device and method for pushing &receiving installation package | |
CN107798064B (zh) | 页面处理方法、电子设备及计算机可读存储介质 | |
EP3313041A1 (en) | Application download method and device | |
CN109831351B (zh) | 链路跟踪方法、装置、终端及存储介质 | |
US8510423B2 (en) | Install system and install method | |
CN108108203B (zh) | 用于安装包下载安装过程的方法、装置及系统 | |
CN111475171B (zh) | 应用程序组件下载方法、装置、电子设备 | |
WO2015003570A1 (en) | Data downloading method,device and system thereof | |
CN111756916A (zh) | 应用处理方法、装置、电子设备及计算机存储介质 | |
WO2018121652A1 (zh) | 通过用户设备中的应用连接无线接入点的方法与设备 | |
CN110365839B (zh) | 关机方法、装置、介质及电子设备 | |
WO2017096889A1 (zh) | 系统升降级的方法和装置 | |
CN112650710A (zh) | 数据迁移的发送方法及装置、存储介质、电子装置 | |
CN109284616B (zh) | 数据访问和数据下发方法、装置、设备及存储介质 | |
CN113515299A (zh) | 软件开发工具包sdk热升级方法、装置、设备及存储介质 | |
CN114816556A (zh) | 请求处理方法、装置和服务器 | |
CN111124445A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |