CN112817660A - 扩展小程序能力的方法、装置、设备以及存储介质 - Google Patents

扩展小程序能力的方法、装置、设备以及存储介质 Download PDF

Info

Publication number
CN112817660A
CN112817660A CN202110149894.0A CN202110149894A CN112817660A CN 112817660 A CN112817660 A CN 112817660A CN 202110149894 A CN202110149894 A CN 202110149894A CN 112817660 A CN112817660 A CN 112817660A
Authority
CN
China
Prior art keywords
extension
module
definition
interface
host application
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
Application number
CN202110149894.0A
Other languages
English (en)
Other versions
CN112817660B (zh
Inventor
孙微
朱叶青
李佳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202110149894.0A priority Critical patent/CN112817660B/zh
Publication of CN112817660A publication Critical patent/CN112817660A/zh
Application granted granted Critical
Publication of CN112817660B publication Critical patent/CN112817660B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Abstract

本申请公开了一种扩展小程序能力的方法、装置、设备以及存储介质,涉及小程序技术领域。该方法的一具体实施方式包括:由小程序加载宿主应用的扩展模块;若扩展模块满足预先定义的扩展条件,基于扩展模块对小程序的能力进行扩展,其中,预先定义的扩展条件包括以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。该实施方式使小程序的开发者能基于扩展模块对小程序的个性化能力进行扩展,提高了小程序开发者的体验,为宿主的个性化场景赋能,有利于小程序场景的扩展以及开源生态建设。

Description

扩展小程序能力的方法、装置、设备以及存储介质
技术领域
本申请实施例涉及计算机领域,具体涉及小程序技术领域,尤其涉及扩展小程序能力的方法、装置、设备以及存储介质。
背景技术
开源宿主是集成了小程序开源能力的App(Application,应用软件)。开发者使用小程序开源能力开发的小程序,可以运行在开源宿主上。然而不同的宿主有不同的个性化场景,开发者在开发运行在宿主上的小程序时,小程序的开源能力可能无法满足开发者的诉求。
发明内容
本申请实施例提出了一种扩展小程序能力的方法、装置、设备以及存储介质。
第一方面,本申请实施例提出了一种扩展小程序能力的方法,包括:由小程序加载宿主应用的扩展模块;若扩展模块满足预先定义的扩展条件,基于扩展模块对小程序的能力进行扩展,其中,预先定义的扩展条件包括以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。
第二方面,本申请实施例提出了一种扩展小程序能力的装置,包括:加载模块,被配置成由小程序加载宿主应用的扩展模块;能力扩展模块,被配置成若扩展模块满足预先定义的扩展条件,基于扩展模块对小程序的能力进行扩展,其中,预先定义的扩展条件包括以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。
第三方面,本申请实施例提出了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行如第一方面中任一实现方式描述的方法。
第五方面,本申请实施例提出了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请实施例提供的扩展小程序能力的方法、装置、设备以及存储介质,首先由小程序加载宿主应用的扩展模块;然后若扩展模块满足预先定义的扩展条件,基于扩展模块对小程序的能力进行扩展,其中,预先定义的扩展条件包括以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。本申请提供了一种扩展小程序能力的方法,使小程序开发者基于宿主应用的扩展模块对小程序的个性化能力进行扩展,为小程序的开发者提供了特定场景下依赖的能力,提高了小程序开发者的体验,也为宿主应用的个性化场景赋能。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显。附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的扩展小程序能力的方法的一个实施例的流程图;
图3是根据本申请的扩展小程序能力的方法的另一个实施例的流程图;
图4是实现本申请的扩展小程序能力的方法的流程框图;
图5是根据本申请的扩展小程序能力的装置的一个实施例的结构示意图;
图6是用来实现本申请实施例的扩展小程序能力的方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的扩展小程序能力的方法或扩展小程序能力的装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送数据等。终端设备101、102、103上可以安装有各种客户端应用。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以提供各种服务。例如,服务器105可以对从终端设备101、102、103获取到的接口定义进行分析和处理,并生成处理结果(例如扩展结果)。
需要说明的是,服务器105可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器105为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的扩展小程序能力的方法一般由服务器105执行,相应地,扩展小程序能力的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,其示出了根据本申请的扩展小程序能力的方法的一个实施例的流程200。该扩展小程序能力的方法包括以下步骤:
步骤201,由小程序加载宿主应用的扩展模块。
在本实施例中,由小程序加载宿主应用的扩展模块。宿主应用是集成了小程序开源能力的App,开发者使用小程序开源能力开发的小程序,可以运行在开源宿主上。扩展模块为具有扩展能力的模块,该扩展模块安装在宿主应用上,用于宿主应用扩展各种个性化能力。当小程序加载宿主应用的扩展模块时,会通过宿主应用预先在上述扩展模块中定义的个性化能力进行扩展,然后小程序的开发者就可以使用上述扩展模块中定义的个性化能力进行扩展了。
在本实施例的一些可选实现方式中,上述扩展模块包括:接口扩展部分、组件扩展部分、统计方法扩展部分和可用性判断扩展部分。宿主应用可在扩展模块内的接口扩展部分定义其想要扩展的接口相关的配置;在组件扩展部分定义其想要扩展的组件相关的信息;在统计方法扩展部分定义其想要扩展的统计方法;在可用性判断扩展部分定义其想要扩展的可用性判断方法。
步骤202,若扩展模块满足预先定义的扩展条件,基于扩展模块对小程序的能力进行扩展,其中,预先定义的扩展条件包括以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。
在本实施例中,扩展小程序能力的方法的执行主体(例如图1所示的服务器105)可以在扩展模块满足预先定义的扩展条件的情况下,基于扩展模块对小程序的能力进行扩展,其中,扩展条件为宿主应用预先在扩展模块中定义的可进行个性化扩展的能力,预先定义的扩展条件可以包括但不限于以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、扩展模块中存在通过宿主应用预先定义的组件扩展定义、扩展模块中存在通过宿主应用预先定义的统计方法扩展定义和扩展模块中存在通过宿主应用预先定义的可用性判断扩展定义,以及将来根据具体情况扩展的其他能力,本申请对此不做具体的限制。宿主应用预先定义扩展条件,在扩展模块满足上述预先定义的扩展条件时,便可通过预先定义的个性化能力进行扩展,从而满足宿主应用的个性化场景。在小程序加载宿主应用的扩展模块后,上述执行主体会判断上述扩展模块是否满足预先定义的扩展条件,并在满足的情况下,基于扩展模块对小程序的能力进行扩展。例如,在小程序加载宿主应用的扩展模块后,上述执行主体会判断上述扩展模块是否存在宿主应用预先定义的接口扩展定义或组件扩展定义,在存在的情况下,基于接口扩展定义或组件扩展定义对小程序的接口或组件进行扩展。
本申请实施例提供的扩展小程序能力的方法,由小程序加载宿主应用的扩展模块;若扩展模块满足预先定义的扩展条件,则基于扩展模块对小程序的能力进行扩展,其中,预先定义的扩展条件包括以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。本申请提供了一种扩展小程序能力的方法,使小程序开发者能基于宿主应用的扩展模块对小程序的个性化能力进行扩展,提高了小程序开发者的体验,为宿主的个性化场景赋能,也有利于小程序个性化场景的扩展以及开源生态的建设。
继续参考图3,图3示出了根据本申请的扩展小程序能力的方法的另一个实施例的流程300。该扩展小程序能力的方法包括以下步骤:
步骤301,由宿主应用在扩展模块中预先定义扩展条件。
在本实施例中,宿主应用在扩展模块中预先定义扩展条件,其中,扩展条件为宿主应用预先在扩展模块中定义的可进行个性化扩展的能力。扩展条件可为以下的一项或多项:扩展模块中存在接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。
在本实施例的一些可选实现方式中,当扩展条件包括接口扩展定义时,步骤301包括:通过宿主应用在扩展模块中定义接口方法、接口优先级配置以及接口命名空间配置。宿主应用在自己的扩展模块中,可以定义其想要扩展的个性化接口的配置项,包括接口方法、接口优先级配置以及接口命名空间配置。接口方法是指小程序的开发者调用该接口时执行的方法;接口优先级配置可以决定宿主应用定义的接口是否可以覆盖当前小程序开源接口中提供的同名接口,即接口优先级配置决定了宿主应用定义的接口和当前小程序开源接口中提供的接口重名时两者的优先级;命名空间配置可以决定该接口要挂载的命名空间。
在本实施例的一些可选实现方式中,当扩展条件包括组件扩展定义时,步骤301还包括:通过宿主应用在扩展模块中定义组件的模板、组件的初始数据以及组件的生命周期。宿主应用在自己的扩展模块中,可以定义其想要扩展的个性化组件的相关信息,包括组件的模板、组件的初始数据以及组件的生命周期。
在本实施例的一些可选实现方式中,当扩展条件包括统计方法扩展定义时,步骤301还包括:通过宿主应用在扩展模块中定义统计方法,其中,统计方法为执行统计功能的方法。宿主应用在自己的扩展模块中,可以监听由小程序发出的各个流程中的统计事件,以用于执行收集PV(Page View,访问量)、UV(Unique Visitor,访问数)等种种功能的统计方法。
在本实施例的一些可选实现方式中,当扩展条件包括可用性判断扩展定义时,步骤301还包括:通过宿主应用在扩展模块中定义可用性判断方法,其中,可用性判断方法为对宿主应用的扩展功能的可用性进行判断的方法。宿主应用在自己的扩展模块中,可以通过定义用于获取可用性判断的方法,来对其个性化接口和组件等等的可用性进行判断。
步骤302,由小程序加载宿主应用的扩展模块。
在本实施例中,由小程序加载宿主应用的扩展模块。步骤302与前述实施例的步骤201相对应,具体实现方式可以参考前述对步骤201的描述,此处不再赘述。
步骤303,判断扩展模块是否满足预先定义的扩展条件,若满足,则基于扩展模块对小程序的能力进行扩展。
在本实施例中,扩展小程序能力的方法的执行主体可以在小程序加载宿主应用的扩展模块后,判断上述扩展模块是否满足步骤301中定义的扩展条件,在满足的情况下,基于扩展模块对小程序的能力进行扩展。
在本实施例的一些可选实现方式中,若扩展模块存在接口扩展定义,则基于接口扩展定义进行接口的扩展。当小程序加载扩展模块时,如果发现当前的扩展模块中存在接口扩展定义,会根据宿主应用在扩展模块中定义的接口方法、接口优先级配置以及接口命名空间配置进行接口的挂载。
在本实施例的一些可选实现方式中,若扩展模块存在组件扩展定义,则基于组件扩展定义进行组件的扩展。当小程序加载扩展模块时,如果发现当前的扩展模块中存在组件扩展的定义,则会根据宿主应用在扩展模块中定义的组件信息,注册组件,从而提供给宿主应用的小程序开发者使用。
在本实施例的一些可选实现方式中,若扩展模块存在统计方法扩展定义,则基于统计方法扩展定义进行统计方法的扩展。当小程序加载扩展模块时,可以监听由小程序发出的各个流程中的统计事件。
在本实施例的一些可选实现方式中,若扩展模块存在可用性判断扩展定义,则基于可用性判断扩展定义进行可用性判断的扩展。小程序加载扩展模块时,会调用宿主应用定义的获取可用性判断的方法,来获取可用性判断map集合,并将其合并到最终的可用性判断的map集合中去,该map集合将被用于可用性判断接口的判断。
本申请实施例提供的扩展小程序能力的方法,首先宿主应用在扩展模块中预先定义扩展条件;然后由小程序加载宿主应用的扩展模块;最后判断扩展模块是否满足预先定义的扩展条件,若满足,则基于扩展模块对小程序的能力进行扩展。本申请实施例提供的扩展小程序能力的方法,为小程序开发者提供特定场景下依赖的能力,提高了小程序开发者的体验,也为宿主的个性化场景赋能,有利于小程序场景的扩展以及开源生态建设。具体主要体现在以下3个方面:
1)开源宿主应用可以自定义其个性化接口和组件,能够满足小程序开发者特定场景下的诉求,为小程序开发者提供特定场景下依赖的能力,从而提高小程序开发者的体验;
2)为开源宿主应用提供扩展统计逻辑的方法,宿主可以进行个性化统计逻辑,有利于宿主对PV、UV等指标的统计;
3)开源宿主应用可以扩展对其个性化接口和组件等等的可用性进行判断,从而提高可用性判断的准确性,也提升了小程序开发者的开发效率和体验。
进一步参考图4,图4是实现本申请的扩展小程序能力的方法的流程框图,在图4中,首先小程序加载宿主应用的扩展模块,然后判断扩展模块中是否存在接口扩展定义,如果存在,则基于接口扩展定义扩展接口,如果不存在,则去判断扩展模块中是否存在组件扩展定义,如果存在,则基于组件扩展定义扩展组件,如果不存在,则去判断扩展模块中是否存在统计方法扩展定义,如果存在,则基于统计方法扩展定义扩展统计方法,如果不存在,则去判断扩展模块中是否存在可用性判断扩展定义,如果存在,则基于可用性判断扩展定义扩展可用性判断方法,如果不存在,则结束个性化能力的扩展流程。需要说明的是,上述流程方法中的判断顺序不分先后,可以根据实际情况进行调整,比如在小程序加载扩展模块后,先判断扩展模块中是否存在组件扩展定义,再判断是否存在接口扩展定义等,本申请对此不做限定。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种扩展小程序能力的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的扩展小程序能力的装置500可以包括:加载模块501和能力扩展模块502。其中,加载模块501,被配置成由小程序加载宿主应用的扩展模块;能力扩展模块502,被配置成若扩展模块满足预先定义的扩展条件,基于扩展模块对小程序的能力进行扩展,其中,预先定义的扩展条件包括以下至少一项:扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。
在本实施例中,扩展小程序能力的装置500中:加载模块501和能力扩展模块502的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-202的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,扩展条件包括接口扩展定义;以及该扩展小程序能力的装置还包括:定义接口模块,被配置成通过宿主应用在扩展模块中定义接口方法、接口优先级配置以及接口命名空间配置。
在本实施例的一些可选的实现方式中,扩展条件包括组件扩展定义;以及该扩展小程序能力的装置还包括:定义组件模块,被配置成通过宿主应用在扩展模块中定义组件的模板、组件的初始数据以及组件的生命周期。
在本实施例的一些可选的实现方式中,扩展条件包括统计方法扩展定义;以及该扩展小程序能力的装置还包括:定义统计方法模块,被配置成通过宿主应用在扩展模块中定义统计方法,该统计方法为执行统计功能的方法。
在本实施例的一些可选的实现方式中,扩展条件包括可用性判断扩展定义;以及该扩展小程序能力的装置还包括:定义可用性判断模块,被配置成通过宿主应用在扩展模块中定义可用性判断方法,该可用性判断方法为对宿主应用的扩展功能的可用性进行判断的方法。
在本实施例的一些可选的实现方式中,能力扩展模块包括:接口扩展子模块,被配置成若扩展模块存在接口扩展定义,基于接口扩展定义进行接口的扩展;组件扩展子模块,被配置成若扩展模块存在组件扩展定义,基于组件扩展定义进行组件的扩展;统计方法扩展子模块,被配置成若扩展模块存在统计方法扩展定义,基于统计方法扩展定义进行统计方法的扩展;可用性判断扩展子模块,被配置成若扩展模块存在可用性判断扩展定义,基于可用性判断扩展定义进行可用性判断的扩展。
在本实施例的一些可选的实现方式中,扩展模块包括:接口扩展部分、组件扩展部分、统计方法扩展部分和可用性判断扩展部分。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如扩展小程序能力的方法。例如,在一些实施例中,扩展小程序能力的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的扩展小程序能力的方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行扩展小程序能力的方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (17)

1.一种扩展小程序能力的方法,包括:
由小程序加载宿主应用的扩展模块;
若所述扩展模块满足预先定义的扩展条件,基于所述扩展模块对所述小程序的能力进行扩展,其中,所述预先定义的扩展条件包括以下至少一项:所述扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。
2.根据权利要求1所述的方法,其中,所述扩展条件包括所述接口扩展定义;
以及在所述由小程序加载宿主应用的扩展模块之前,所述方法还包括:
通过宿主应用在所述扩展模块中定义接口方法、接口优先级配置以及接口命名空间配置。
3.根据权利要求1所述的方法,其中,所述扩展条件包括所述组件扩展定义;
以及在所述由小程序加载宿主应用的扩展模块之前,所述方法还包括:
通过宿主应用在所述扩展模块中定义组件的模板、组件的初始数据以及组件的生命周期。
4.根据权利要求1所述的方法,其中,所述扩展条件包括所述统计方法扩展定义;
以及在所述由小程序加载宿主应用的扩展模块之前,所述方法还包括:
通过宿主应用在所述扩展模块中定义统计方法,所述统计方法为执行统计功能的方法。
5.根据权利要求1所述的方法,其中,所述扩展条件包括所述可用性判断扩展定义;
以及在所述由小程序加载宿主应用的扩展模块之前,所述方法还包括:
通过宿主应用在所述扩展模块中定义可用性判断方法,所述可用性判断方法为对所述宿主应用的扩展功能的可用性进行判断的方法。
6.根据权利要求1所述的方法,其中,所述若所述扩展模块满足预先定义的扩展条件,基于所述扩展模块对所述小程序的能力进行扩展,包括:
若所述扩展模块存在所述接口扩展定义,基于所述接口扩展定义进行接口的扩展;
若所述扩展模块存在所述组件扩展定义,基于所述组件扩展定义进行组件的扩展;
若所述扩展模块存在所述统计方法扩展定义,基于所述统计方法扩展定义进行统计方法的扩展;
若所述扩展模块存在所述可用性判断扩展定义,基于所述可用性判断扩展定义进行可用性判断的扩展。
7.根据权利要求1所述的方法,其中,所述扩展模块包括:接口扩展部分、组件扩展部分、统计方法扩展部分和可用性判断扩展部分。
8.一种扩展小程序能力的装置,包括:
加载模块,被配置成由小程序加载宿主应用的扩展模块;
能力扩展模块,被配置成若所述扩展模块满足预先定义的扩展条件,基于所述扩展模块对所述小程序的能力进行扩展,其中,所述预先定义的扩展条件包括以下至少一项:所述扩展模块中存在通过宿主应用预先定义的接口扩展定义、组件扩展定义、统计方法扩展定义和可用性判断扩展定义。
9.根据权利要求8所述的装置,其中,所述扩展条件包括所述接口扩展定义;
以及所述装置还包括:
定义接口模块,被配置成通过宿主应用在所述扩展模块中定义接口方法、接口优先级配置以及接口命名空间配置。
10.根据权利要求8所述的装置,其中,所述扩展条件包括所述组件扩展定义;
以及所述装置还包括:
定义组件模块,被配置成通过宿主应用在所述扩展模块中定义组件的模板、组件的初始数据以及组件的生命周期。
11.根据权利要求8所述的装置,其中,所述扩展条件包括所述统计方法扩展定义;
以及所述装置还包括:
定义统计方法模块,被配置成通过宿主应用在所述扩展模块中定义统计方法,所述统计方法为执行统计功能的方法。
12.根据权利要求8所述的装置,其中,所述扩展条件包括所述可用性判断扩展定义;
以及所述装置还包括:
定义可用性判断模块,被配置成通过宿主应用在所述扩展模块中定义可用性判断方法,所述可用性判断方法为对所述宿主应用的扩展功能的可用性进行判断的方法。
13.根据权利要求8所述的装置,其中,所述能力扩展模块包括:
接口扩展子模块,被配置成若所述扩展模块存在所述接口扩展定义,基于所述接口扩展定义进行接口的扩展;
组件扩展子模块,被配置成若所述扩展模块存在所述组件扩展定义,基于所述组件扩展定义进行组件的扩展;
统计方法扩展子模块,被配置成若所述扩展模块存在所述统计方法扩展定义,基于所述统计方法扩展定义进行统计方法的扩展;
可用性判断扩展子模块,被配置成若所述扩展模块存在所述可用性判断扩展定义,基于所述可用性判断扩展定义进行可用性判断的扩展。
14.根据权利要求8所述的装置,其中,所述扩展模块包括:接口扩展部分、组件扩展部分、统计方法扩展部分和可用性判断扩展部分。
15.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-7中任一项所述的方法。
CN202110149894.0A 2021-02-03 2021-02-03 扩展小程序能力的方法、装置、设备以及存储介质 Active CN112817660B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110149894.0A CN112817660B (zh) 2021-02-03 2021-02-03 扩展小程序能力的方法、装置、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110149894.0A CN112817660B (zh) 2021-02-03 2021-02-03 扩展小程序能力的方法、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN112817660A true CN112817660A (zh) 2021-05-18
CN112817660B CN112817660B (zh) 2023-12-12

Family

ID=75860961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110149894.0A Active CN112817660B (zh) 2021-02-03 2021-02-03 扩展小程序能力的方法、装置、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN112817660B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312055A (zh) * 2021-05-28 2021-08-27 支付宝(杭州)信息技术有限公司 一种小程序投放方法、装置以及设备
CN114037503A (zh) * 2022-01-07 2022-02-11 浙江口碑网络技术有限公司 一种订单处理方法以及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365674A (zh) * 2012-03-31 2013-10-23 腾讯科技(深圳)有限公司 一种基于移动终端的插件管理方法、装置和系统
CN104391700A (zh) * 2014-11-11 2015-03-04 百度在线网络技术(北京)有限公司 应用程序功能扩展方法和装置
WO2015183456A1 (en) * 2014-05-29 2015-12-03 Apple Inc. Consistent extension points to allow an extension to extend functionality of an application to another application
CN105653133A (zh) * 2015-12-30 2016-06-08 武汉传神信息技术有限公司 应用程序的扩展方法及装置
US9652214B1 (en) * 2015-12-18 2017-05-16 Sap Se Pluggable extension of software applications
US9880814B1 (en) * 2015-08-13 2018-01-30 F5 Networks, Inc. Dynamic generation of plugins based on user-customized catalogs
CN109145591A (zh) * 2018-09-10 2019-01-04 上海连尚网络科技有限公司 应用程序的插件加载方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365674A (zh) * 2012-03-31 2013-10-23 腾讯科技(深圳)有限公司 一种基于移动终端的插件管理方法、装置和系统
WO2015183456A1 (en) * 2014-05-29 2015-12-03 Apple Inc. Consistent extension points to allow an extension to extend functionality of an application to another application
CN104391700A (zh) * 2014-11-11 2015-03-04 百度在线网络技术(北京)有限公司 应用程序功能扩展方法和装置
US9880814B1 (en) * 2015-08-13 2018-01-30 F5 Networks, Inc. Dynamic generation of plugins based on user-customized catalogs
US9652214B1 (en) * 2015-12-18 2017-05-16 Sap Se Pluggable extension of software applications
CN105653133A (zh) * 2015-12-30 2016-06-08 武汉传神信息技术有限公司 应用程序的扩展方法及装置
CN109145591A (zh) * 2018-09-10 2019-01-04 上海连尚网络科技有限公司 应用程序的插件加载方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
徐龙;: "基于MEF技术的程序解耦探究", 科技尚品, no. 08 *
黄炳金: "基于Weex的安卓智能POS机小程序运行系统的设计与实现", 信息科技辑 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312055A (zh) * 2021-05-28 2021-08-27 支付宝(杭州)信息技术有限公司 一种小程序投放方法、装置以及设备
CN113312055B (zh) * 2021-05-28 2023-02-24 支付宝(中国)网络技术有限公司 一种小程序投放方法、装置以及设备
CN114037503A (zh) * 2022-01-07 2022-02-11 浙江口碑网络技术有限公司 一种订单处理方法以及装置

Also Published As

Publication number Publication date
CN112817660B (zh) 2023-12-12

Similar Documents

Publication Publication Date Title
CN113961351B (zh) 深度学习模型的分布式训练方法、装置、设备及存储介质
CN112948079B (zh) 任务调度方法、装置、设备和计算机存储介质
CN113342345A (zh) 深度学习框架的算子融合方法、装置
CN112817660B (zh) 扩展小程序能力的方法、装置、设备以及存储介质
CN114816393B (zh) 信息生成方法、装置、设备以及存储介质
CN113791882B (zh) 多任务的部署方法、装置、电子设备及存储介质
CN114819084A (zh) 模型推理方法、装置、设备及存储介质
CN114374703B (zh) 云手机信息的获取方法、装置、设备以及存储介质
CN116126719A (zh) 接口测试方法、装置、电子设备及存储介质
CN113377295B (zh) 多生产者单消费者的数据存储和读取方法、装置、设备
CN115481594B (zh) 计分板实现方法、计分板、电子设备及存储介质
CN114265692A (zh) 服务调度方法、装置、设备以及存储介质
CN114386577A (zh) 用于执行深度学习模型的方法、设备和存储介质
CN114595047A (zh) 一种批量任务处理方法和装置
CN114138358A (zh) 应用程序的启动优化方法、装置、设备和存储介质
CN113535020A (zh) 用于生成应用图标的方法、装置、设备、介质和产品
CN112632384A (zh) 针对应用程序的数据处理方法、装置、电子设备和介质
CN113360407B (zh) 函数的定位方法、装置、电子设备及可读存储介质
CN115495312B (zh) 业务请求处理方法和装置
CN114816758B (zh) 资源分配方法和装置
CN114428646B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN113407844B (zh) 小程序框架的版本推荐方法、装置、设备以及存储介质
CN116561075B (zh) 动态链接库文件的生成方法、算子的调用方法及装置
CN113535187B (zh) 服务上线方法、服务更新方法及服务提供方法
CN113342413B (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