CN109976922B - 小程序平台间的发现方法、设备和计算机存储介质 - Google Patents
小程序平台间的发现方法、设备和计算机存储介质 Download PDFInfo
- Publication number
- CN109976922B CN109976922B CN201910160759.9A CN201910160759A CN109976922B CN 109976922 B CN109976922 B CN 109976922B CN 201910160759 A CN201910160759 A CN 201910160759A CN 109976922 B CN109976922 B CN 109976922B
- Authority
- CN
- China
- Prior art keywords
- platform
- applet
- application
- small program
- information
- 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
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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种小程序平台间的发现方法、设备和计算机存储介质,其中方法包括:第一小程序平台扫描所在用户设备已安装的应用;解析当前扫描到的应用的配置文件中是否预先声明了小程序平台服务,如果是,则确定所述当前扫描到的应用为集成了小程序平台的宿主应用。本发明能够在小程序平台同时集成于同一用户设备的多个宿主应用中时,实现小程序平台之间的相互感知。
Description
【技术领域】
本发明涉及计算机应用技术领域,特别涉及一种小程序平台间的发现方法、设备和计算机存储介质。
【背景技术】
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就被认为是现有技术。
小程序(Mini Program)是一种不需要下载安装即可使用的应用,其运行于宿主应用提供的环境下。目前的小程序平台都集成在单一的宿主应用中。但如果小程序平台同时集成于同一用户设备的多个宿主应用中,那么小程序平台之间无法相互感知,也就无法进行后续的相互通讯。
【发明内容】
有鉴于此,本发明提供了一种小程序平台间的发现方法、设备和计算机存储介质,以解决小程序平台同时集成于同一用户设备的多个宿主应用中时,小程序平台之间无法相互感知的问题。
具体技术方案如下:
第一方面,本发明提供了一种小程序平台间的发现方法,该方法包括:
第一小程序平台扫描所在用户设备已安装的应用;
解析当前扫描到的应用的配置文件中是否预先声明了小程序平台服务,如果是,则确定所述当前扫描到的应用为集成了小程序平台的宿主应用。
根据本发明一优选实施方式,所述小程序平台服务在配置文件中采用预设的命名机制,且包含宿主应用的标识信息。
根据本发明一优选实施方式,在确定出集成了小程序平台的宿主应用后,还包括:
所述第一小程序平台缓存所述集成了小程序平台的宿主应用的小程序平台服务接口。
根据本发明一优选实施方式,该方法还包括:
所述第一小程序平台调用缓存的小程序平台的服务接口,与第二小程序平台通讯。
根据本发明一优选实施方式,所述与第二小程序平台通讯包括:
第一小程序平台向第二小程序平台发送启动数据,所述启动数据包括宿主应用的信息和所述第一小程序平台的信息;
接收所述第二小程序平台返回的校验数据,所述校验数据包括所述第二小程序平台所在宿主应用的信息和所述第二小程序平台的信息;
依据所述校验数据,确定采用的应用接口集;
利用确定的应用接口集与所述第二小程序平台进行通讯。
根据本发明一优选实施方式,该方法还包括:
第一小程序平台接收第二小程序平台发送的启动数据,所述启动数据包括所述第二小程序平台所在宿主应用的信息和所述第二小程序平台的信息;
向所述第二小程序平台返回校验数据,所述校验数据包括所述第一小程序平台所在宿主应用的信息和所述第一小程序平台的信息;
依据所述启动数据,确定采用的应用接口集;
利用确定的应用接口集与所述第二小程序平台进行通讯。
根据本发明一优选实施方式,所述宿主应用的信息包括:宿主应用的标识信息;
所述小程序平台的信息包括:小程序平台的类型信息和版本信息。
根据本发明一优选实施方式,依据所述校验数据,确定采用的应用接口集包括:
确定所述第一小程序平台对应的应用接口集版本和所述第二小程序平台对应的应用接口集版本中的最小版本对应的应用接口集;
从小程序开放平台拉取所述最小版本对应的应用接口集。
第二方面,本发明提供了一种设备,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的方法。
第三方面,本发明提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上所述的方法。
由以上技术方案可以看出,本发明中小程序平台扫描所在用户设备已安装的应用,通过解析应用配置文件中是否预先声明小程序平台服务的方式,发现集成了小程序平台的宿主应用。从而解决了小程序平台同时集成于同一用户设备的多个宿主应用中时,小程序平台之间无法相互感知的问题。
【附图说明】
图1为本发明实施例提供的小程序平台间的发现方法的流程图;
图2为本发明实施例提供的小程序平台间通讯方法的流程图;
图3示出了适于用来实现本发明实施方式的示例性计算机系统/服务器的框图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
本发明的核心思想在于,通过定义一种服务来解决小程序平台之间互相感知的问题。下面结合实施例对本发明提供的方法进行详细描述。
为了方便对本发明实施例的理解,对本发明实施例中涉及的几个概念进行说明:
小程序平台为小程序运行于宿主应用提供应用接口,小程序依托小程序平台以运行于宿主应用。
宿主应用是小程序平台所集成在的应用,小程序运行所在的环境是宿主应用提供的。
上述小程序、小程序平台、宿主应用均位于用户设备端。
小程序开放平台通常位于服务器端,负责维护小程序平台的API(应用接口)。
宿主应用安装并运行于任意的用户设备,包括但不限于诸如:智能移动终端、智能家居设备、网络设备、可穿戴式设备、智能医疗设备、PC(个人计算机)等。其中智能移动设备可以包括诸如手机、平板电脑、笔记本电脑、PDA(个人数字助理)、互联网汽车等。智能家居设备可以包括智能家电设备,诸如智能电视、智能音箱等。网络设备可以包括诸如交换机、无线AP、服务器等。可穿戴式设备可以包括诸如智能手表、智能眼镜、智能手环、虚拟现实设备、增强现实设备、混合现实设备(即可以支持虚拟现实和增强现实的设备)等等。
图1为本发明实施例提供的小程序平台间的发现方法的流程图。如图1中所示,该方法主要包括以下步骤:
在101中,小程序平台启动时,扫描所在用户设备已安装的应用。
小程序平台通常随着宿主应用启动,可以在宿主应用启动时默认启动,也可以在其宿主应用启动后由特定的业务场景触发启动,还可以在其宿主应用启动后由人为触发启动。
当小程序平台启动时,对所在用户设备本地已安装的应用程序进行扫描,例如对所有应用安装包进行逐一扫描。
另外,除了小程序平台启动时触发执行该发现流程之外,也不排除可以采用其他触发方式,例如由特定事件触发小程序平台启动该发现流程。
在102中,解析扫描到的应用的配置文件中是否预先声明了小程序平台服务,如果是,执行103;否则继续扫描其他应用直至扫描完毕。
宿主应用集成小程序平台时,在宿主应用的配置文件中声明小程序平台服务。例如可以在宿主应用的manifest文件中声明小程序平台服务。在本发明实施例中,可以采用预设的命名机制对小程序平台服务进行声明。每一种类型的小程序平台可以采用统一的命名机制,举个例子,可以采用如下格式对小程序平台服务进行命名:
com.platform.XXXX.service
其中,XXXX可以是宿主应用的标识信息,例如宿主应用的包名。
当然,各种类型的小程序平台也可以采用各自的命名机制,但小程序平台可以预先获取其他小程序平台的命名机制,从而对其他小程序平台进行发现。
通过对manifest文件进行解析,判断其是否具有采用小程序平台所对应的特定命名机制的服务,如果是,则执行103,即可以认为该扫描到的应用为集成了小程序平台的宿主应用。
另外,宿主应用在集成小程序平台时,可以选择是否将该服务开放,如果开放,则该宿主应用的小程序平台服务可以在被扫描配置文件时被解析到,即该宿主应用集成的小程序平台能够被感知到,否则不会被感知到。
在104中,缓存小程序平台服务接口。
通常宿主应用集成小程序平台后,其配置文件中在声明小程序平台服务的同时,对该服务对应的服务接口(即小程序平台服务接口)也进行声明。也就是说,在解析应用的配置文件后,得到关于小程序平台服务的声明的同时,获取并缓存小程序平台服务接口。在本步骤中,小程序平台缓存集成了小程序平台的宿主应用的小程序平台服务接口,可以将其缓存于小程序平台的特定目录下。缓存内容可以包括宿主应用的标识信息和该宿主应用的小程序平台服务接口。
用户设备中的各小程序平台可以在启动时均执行上述流程,从而实现小程序平台之间的互相发现,从而感知其他小程序平台所在的宿主应用和小程序平台服务接口,为后续的小程序平台之间的通讯提供基础。
需要说明的是,101~104的执行主体可以为小程序平台中的发现装置,该装置可以位于小程序平台,或者还可以为位于小程序平台的插件或软件开发工具包(SoftwareDevelopment Kit,SDK)等功能单元。
当一个小程序平台按照图1所示流程启动并发现另外一个小程序平台后,想要与该另外一个小程序平台通讯,则可以按照图2所示流程实现。为了对两个小程序平台进行区分,将其分别称为第一小程序平台和第二小程序平台。需要说明的是,本实施例中的“第一”和“第二”仅仅是对小程序平台进行的区分,并不用以对小程序平台的功能、类型等属性进行限制,也不用以表示任何顺序上的含义。如图2所示,实现两个小程序平台之间通讯的方法可以包括以下步骤:
在201中,第一小程序平台向第二小程序平台发送启动数据。
第一小程序平台可以利用在发现过程中记录并缓存的小程序平台服务接口向第二小程序平台发送启动数据,该启动数据可以包括第一小程序平台所在宿主应用的信息和第一小程序平台的信息,还可以进一步包括启动原因。
其中,宿主应用的信息可以包括宿主应用的标识信息(例如宿主应用的包名),还可以包括宿主应用的版本信息(例如版本号)。第一小程序平台的信息可以包括第一小程序平台的类型和版本信息(例如版本号)。
在本发明实施例中,宿主应用的标识信息和小程序平台的类型信息可以唯一标识一个小程序平台。
上述启动数据中包括的启动原因可以诸如:要获取特定类型的数据、要获取特定用户的数据、要获取特定时间的数据,等等。
上述启动原因一方面用于告知义务,即告知第二小程序平台本次通讯的目的是什么;另一方面用于第二小程序平台进行本次通讯的校验,以确定是否接受本次第一小程序平台发起的通讯。
在本发明实施例中,第一小程序平台的平台进程(实体进程)启动后,由第一小程序平台的平台进程和服务接口进程分别执行图1和图2中的处理。而第二小程序平台可以在平台进程未启动的情况下,由第二小程序平台的服务接口进程执行图2中的处理。当然,也可以在第二小程序平台的平台进程启动的情况下执行。
在202中,第二小程序平台利用接收到的启动数据进行校验。
本步骤是利用启动数据进行校验,以确定是否接受与第一小程序平台的通讯。具体的校验可以是依据宿主应用的信息、第一小程序平台的信息和启动原因中的至少一种进行的校验。
依据宿主应用的信息进行的校验,可以基于预先配置的白名单、黑名单等方式对宿主应用进行校验。例如,第二小程序平台预先配置拒绝特定宿主应用的通讯。也可以基于宿主应用的版本规则进行校验,例如拒绝高于预设版本或低于预设版本的宿主应用的通讯。
依据第一小程序平台的信息进行的校验,同样可以基于预先配置的白名单、黑名单等方式对小程序平台进行校验。例如,第二小程序平台预先配置拒绝特定小程序平台的通讯。也可以基于第一小程序平台的版本规则进行校验,例如拒绝高于预设版本或低于预设版本的第一小程序平台的通讯。
依据启动原因进行的校验,可以预先配置拒绝进行通讯的启动原因或者允许进行通讯的启动原因,然后基于该配置进行校验。例如,第二小程序平台预先配置拒绝启动原因涉及用户隐私的通讯。
上述校验所采用的具体策略可以灵活配置,在此不做一一穷举。
在203中,第二小程序平台确定接受通讯后,向第一小程序平台返回校验数据。
在本发明实施例中,第二小程序平台可以根据校验信息确定是否接受通讯,如果接受通讯,则向第一小程序平台返回校验数据;如果不接受通讯,则可以向第一小程序平台返回拒绝通讯的消息或者不予响应。
其中上述校验数据中可以包括第二小程序平台所在宿主应用的信息和第二小程序平台的信息。其中,宿主应用的信息可以包括宿主应用的标识信息(例如宿主应用的包名),还可以包括宿主应用的版本信息(例如版本号)。第二小程序平台的信息可以包括第二小程序平台的类型和版本信息(例如版本号)。
上述步骤201~203实际上完成了一次握手的过程。下面步骤204~207用以实现API(Application Programming Interface,应用接口)版本兼容:
在204中,第一小程序平台依据校验数据,确定采用的API集。
通常,小程序平台的类型信息和版本信息能够唯一标识其采用的API。因此,第一小程序平台依据校验数据中包含的第二小程序平台的类型信息和版本信息,可以确定第二小程序平台对应的应用接口集版本。然后确定第一小程序平台对应的API集版本和第二小程序平台对应的API集版本中的最小版本对应的API集为采用的API集。
在205中,第二小程序平台依据启动数据,确定采用的API集。
第二小程序平台依据启动数据中包含的第一小程序平台的类型信息和版本信息,可以确定第一小程序平台对应的应用接口集版本。确定第一小程序平台对应的API集版本和第二小程序平台对应的API集版本中的最小版本对应的API集为采用的API集。
在206中,第一小程序平台从小程序开放平台拉取采用的API集。
小程序开放平台通常位于服务器端,其维护小程序平台的API,不同类型和版本的小程序平台对应不同的API集。各小程序平台可以将其所需的小程序平台的类型和版本号提供给小程序开发平台,由小程序开发平台将对应的API集发送给小程序平台。
若第一小程序平台本地已经存在步骤204中确定采用的API集,则可以不执行本步骤206。
在207中,第二小程序平台从小程序开放平台拉取采用的API集。
本步骤的实现过程与206相似,在此不做赘述。同样若第二小程序平台本地已经存在步骤205中确定采用的API集,则可以不执行本步骤207。
需要说明的是,上述步骤204和205之间的执行顺序并不限于本实施例所示,也可以先执行205再执行204,或者204和205同时执行。同样,步骤206和207之间的执行顺序并不限于本实施例所示,也可以先执行207再执行206,或者206和207同时执行。
实现API(应用接口)版本兼容后,通过下述步骤开始第一小程序平台和第二小程序平台之间的通讯。
在208中,第一小程序平台向第二小程序平台发送询问是否就绪的信息。
在209中,第二小程序平台向第一小程序平台返回应答信息。
上述208~209也是一个握手的过程,通过调用相应的API实现。
如果第一小程序平台在设定时间内未收到应答信息,则可以重新向第二小程序平台发送询问是否就绪的信息;若重新发送的次数达到预设次数仍未接收到应答信息,则结束本次通讯过程,即本次通讯失败。
如果第一小程序平台在设定时间内接收到指示就绪的应答信息,则本次握手成功,继续执行后续步骤进行数据通讯。
如果第一小程序平台在设定时间内接收到指示未就绪的应答信息,则可以等待一定时长后重新向第二小程序平台发送询问是否就绪的信息,直至重新发送的次数达到预设次数,则结束本次通讯过程,即本次通讯失败。或者,如果第一小程序在设定时间内接收到指示未就绪的应答信息,则直接结束本次通讯过程,即本次通讯失败。
在210中,第一小程序平台与第二小程序平台之间进行数据通讯。
在进行数据通讯时主要通过服务中的API调用。采用的方式可以是随调用的API传递第一数据,或者,在调用的API中传递第二数据的访问路径;其中,第一数据的数据量小于第二数据的数据量。
其中,上述第一数据可以是小数据。对于小数据(例如文本类数据)而言,可以随调用的API直接传递该小数据。
上述第二数据可以是大数据,对于大数据(例如图片、音频等)而言,则可以将该大数据所在存储区的访问路径作为调用的API的参数,即在调用的API中传递大数据的访问路径。其中,大数据可以在专门的存储区进行存储,例如在SD卡中。每个小程序平台维护各自的访问目录。
上述201~210的执行主体可以为小程序平台中的通讯装置,该装置可以位于小程序平台,或者还可以为位于小程序平台的插件或软件开发工具包(Software DevelopmentKit,SDK)等功能单元。
需要说明的是,在图2所示通讯流程中,可以是第一小程序平台启动后按照图1所示发现流程发现了第二小程序平台后,主动向第二小程序平台发送启动数据,以与第二小程序平台进行通讯。也可以是第二小程序平台启动后执行图1所示发现流程,但接收到第一小程序平台的启动数据后,被动与第一小程序平台进行通讯。也就是说,图2所示通讯流程中的第一小程序平台和第二小程序平台在执行图2所示通讯流程之前,均可以先执行了图1所示发现流程。
另外,第一小程序平台按照图1所示发现流程发现了第二小程序平台,除了图2所示通讯流程之外,也可以采用其他通讯流程以实现与第二小程序平台之间的通讯。
下面以一个实际的应用场景为例,对上述过程进行描述。
假设用户手机中安装的应用程序包括应用1、应用2、应用3,其中应用1中集成了小程序平台1,应用2中集成了小程序平台2,应用3中集成了小程序平台3。
当小程序平台1随着应用1启动后,扫描用户设备已安装的所有应用。解析扫描到的应用的manifest文件中是否声明了小程序平台服务。即采用特定的命名机制解析应用的manifest文件中的小程序平台服务,并从服务信息中获取宿主应用的标识信息和服务接口信息。例如,在某应用安装包中存在如下声明:
com.platform.app1.service
上述声明表示在应用1(app 1)中存在小程序平台,同时获取配置文件中声明的服务接口。
假设最终,小程序平台1扫描到如下信息列表:
小程序平台1-应用1-服务接口1
小程序平台2-应用2-服务接口2
小程序平台3-应用3-服务接口3
上述信息列表中每一条所采用的格式为“小程序平台信息-宿主应用信息-服务接口信息”。缓存上述列表至小程序平台1的指定目录下。其中由于“小程序平台1-应用1-服务接口1”是自身的信息,因此可以将该条信息从列表中删除。
至此,小程序平台1的发现流程完毕。
若小程序平台1想要与其发现的小程序平台2进行通信,例如要获取用户A的特定类型的数据。则小程序平台1调用服务接口2向小程序平台2发送启动数据。启动数据中包括应用1的标识信息、小程序平台1的类型信息和版本号、启动原因。
小程序平台2利用接收到的启动数据进行校验。假设启动原因中获取用户A的特定类型的数据属于用户隐私,小程序平台2可以向小程序平台1返回拒绝通讯的信息,表明未通过校验。
若通过校验,小程序平台2可以向小程序平台1返回校验数据,校验数据中包括应用2的标识信息、小程序平台2的类型信息和版本号。至此,完成启动握手。
小程序平台1和小程序平台2分别依据自己和对方的类型和版本号,确定两个小程序平台对应的API集版本中的最小版本对应的API集为采用的API集,若本地不存在该API集则从小程序开放平台拉取该API集。从而实现API版本兼容。
小程序平台1向小程序平台2发送询问是否就绪的信息,小程序平台2向小程序平台1返回指示就绪应答信息。完成第二次握手。若小程序平台2向小程序平台1返回指示未就绪的应答信息,或者未向小程序平台1返回应答信息,则结束本次通讯。
在完成第二次握手后,小程序平台1和小程序平台2就可以通过调用相应的API实现数据通讯。其中,对于小数据可以随调用API直接传递,对于大数据可以在调用的API中传递大数据的访问路径。
本发明实施例提供的上述方法可以具备以下优点:
1)本发明提供的小程序平台间的发现方法,在小程序平台同时集成于同一用户设备的多个宿主应用中时,实现小程序平台之间的相互感知。
2)本发明提供的小程序平台间的通讯方法,在小程序平台同时集成于同一用户设备的多个宿主应用时,实现小程序平台之间的相互通讯。
3)在实现小程序平台之间的相互通讯过程中,考虑到小程序平台之间能够采用的API的兼容问题。
图3示出了适于用来实现本发明实施方式的示例性计算机系统/服务器012的框图。图3显示的计算机系统/服务器012仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,计算机系统/服务器012以通用计算设备的形式表现。计算机系统/服务器012的组件可以包括但不限于:一个或者多个处理器或者处理单元016,系统存储器028,连接不同系统组件(包括系统存储器028和处理单元016)的总线018。
总线018表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器012典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器012访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器028可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)030和/或高速缓存存储器032。计算机系统/服务器012可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统034可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线018相连。系统存储器028可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块042的程序/实用工具040,可以存储在例如系统存储器028中,这样的程序模块042包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块042通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器012也可以与一个或多个外部设备014(例如键盘、指向设备、显示器024等)通信,在本发明中,计算机系统/服务器012与外部雷达设备进行通信,还可与一个或者多个使得用户能与该计算机系统/服务器012交互的设备通信,和/或与使得该计算机系统/服务器012能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口022进行。并且,计算机系统/服务器012还可以通过网络适配器020与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器020通过总线018与计算机系统/服务器012的其它模块通信。应当明白,尽管图3中未示出,可以结合计算机系统/服务器012使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元016通过运行存储在系统存储器028中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的方法流程。
上述的计算机程序可以设置于计算机存储介质中,即该计算机存储介质被编码有计算机程序,该程序在被一个或多个计算机执行时,使得一个或多个计算机执行本发明上述实施例中所示的方法流程和/或装置操作。例如,被上述一个或多个处理器执行本发明实施例所提供的方法流程。
随着时间、技术的发展,介质含义越来越广泛,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载等。可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (9)
1.一种小程序平台间的发现方法,其特征在于,该方法包括:
第一小程序平台扫描所在用户设备已安装的应用;
解析当前扫描到的应用的配置文件中是否预先声明且开放了小程序平台服务,如果是,则确定所述当前扫描到的应用为集成了小程序平台的宿主应用;
其中,所述小程序平台服务在配置文件中采用预设的命名机制,且包含宿主应用的标识信息。
2.根据权利要求1所述的方法,其特征在于,在确定出集成了小程序平台的宿主应用后,还包括:
所述第一小程序平台缓存所述集成了小程序平台的宿主应用的小程序平台服务接口。
3.根据权利要求2所述的方法,其特征在于,该方法还包括:
所述第一小程序平台调用缓存的小程序平台的服务接口,与第二小程序平台通讯。
4.根据权利要求3所述的方法,其特征在于,所述与第二小程序平台通讯包括:
第一小程序平台向第二小程序平台发送启动数据,所述启动数据包括宿主应用的信息和所述第一小程序平台的信息;
接收所述第二小程序平台返回的校验数据,所述校验数据包括所述第二小程序平台所在宿主应用的信息和所述第二小程序平台的信息;
依据所述校验数据,确定采用的应用接口集;
利用确定的应用接口集与所述第二小程序平台进行通讯。
5.根据权利要求1所述的方法,其特征在于,该方法还包括:
第一小程序平台接收第二小程序平台发送的启动数据,所述启动数据包括所述第二小程序平台所在宿主应用的信息和所述第二小程序平台的信息;
向所述第二小程序平台返回校验数据,所述校验数据包括所述第一小程序平台所在宿主应用的信息和所述第一小程序平台的信息;
依据所述启动数据,确定采用的应用接口集;
利用确定的应用接口集与所述第二小程序平台进行通讯。
6.根据权利要求4或5所述的方法,其特征在于,所述宿主应用的信息包括:宿主应用的标识信息;
所述小程序平台的信息包括:小程序平台的类型信息和版本信息。
7.根据权利要求4或5所述的方法,其特征在于,依据所述校验数据,确定采用的应用接口集包括:
确定所述第一小程序平台对应的应用接口集版本和所述第二小程序平台对应的应用接口集版本中的最小版本对应的应用接口集;
从小程序开放平台拉取所述最小版本对应的应用接口集。
8.一种小程序平台间的发现设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
9.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910160759.9A CN109976922B (zh) | 2019-03-04 | 2019-03-04 | 小程序平台间的发现方法、设备和计算机存储介质 |
PCT/CN2020/077693 WO2020177697A1 (zh) | 2019-03-04 | 2020-03-04 | 小程序平台间的发现方法、设备和计算机存储介质 |
US17/595,375 US20220245005A1 (en) | 2019-03-04 | 2020-03-04 | Methods, devices and computer storage media for inter-mini program platform discovery |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910160759.9A CN109976922B (zh) | 2019-03-04 | 2019-03-04 | 小程序平台间的发现方法、设备和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109976922A CN109976922A (zh) | 2019-07-05 |
CN109976922B true CN109976922B (zh) | 2021-02-02 |
Family
ID=67077825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910160759.9A Active CN109976922B (zh) | 2019-03-04 | 2019-03-04 | 小程序平台间的发现方法、设备和计算机存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220245005A1 (zh) |
CN (1) | CN109976922B (zh) |
WO (1) | WO2020177697A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109933442B (zh) * | 2019-03-04 | 2022-12-30 | 上海连尚网络科技有限公司 | 小程序平台间的通讯方法、设备和计算机存储介质 |
CN109976922B (zh) * | 2019-03-04 | 2021-02-02 | 上海连尚网络科技有限公司 | 小程序平台间的发现方法、设备和计算机存储介质 |
CN110515678B (zh) * | 2019-08-23 | 2021-03-19 | 上海连尚网络科技有限公司 | 一种信息处理方法、设备和计算机存储介质 |
CN114896570A (zh) * | 2020-05-27 | 2022-08-12 | 支付宝(杭州)信息技术有限公司 | 小程序应用的安装管理方法、设备及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7082567B1 (en) * | 1999-10-18 | 2006-07-25 | Rose Blush Software Llc | Enhanced human computer user interface system for searching and browsing documents |
CN108829528A (zh) * | 2018-06-11 | 2018-11-16 | 腾讯科技(深圳)有限公司 | 内容分享方法和装置、消息处理方法和装置 |
CN108846100A (zh) * | 2018-06-19 | 2018-11-20 | 上海掌门科技有限公司 | 快速搜索寄宿应用的方法及设备 |
CN108984225A (zh) * | 2018-06-19 | 2018-12-11 | 上海掌门科技有限公司 | 快速启动寄宿应用的方法及设备 |
CN109359237A (zh) * | 2018-09-30 | 2019-02-19 | 上海掌门科技有限公司 | 一种用于搜索寄宿程序的方法与设备 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090172710A1 (en) * | 2007-12-28 | 2009-07-02 | Arman Toorians | Method and system for enabling a mini program on a computing device to access an auxiliary system |
US10114666B1 (en) * | 2009-09-30 | 2018-10-30 | EMC IP Holding Company LLC | Loading software components |
US9843624B1 (en) * | 2013-06-13 | 2017-12-12 | Pouya Taaghol | Distributed software defined networking |
EP3103205A4 (en) * | 2014-02-03 | 2017-06-28 | LG Electronics Inc. | Broadcast receiving device and operating method thereof |
US9380054B2 (en) * | 2014-04-18 | 2016-06-28 | Cellco Partnership | Application signing |
US9772926B2 (en) * | 2015-08-20 | 2017-09-26 | International Business Machines Corporation | System and method for determining relevance of application software maintenance |
CN107885995A (zh) * | 2017-10-09 | 2018-04-06 | 阿里巴巴集团控股有限公司 | 小程序的安全扫描方法、装置以及电子设备 |
CN109144478B (zh) * | 2018-07-12 | 2022-02-25 | 北京猫眼文化传媒有限公司 | 组件框架系统以及组件框架系统的使用方法 |
CN109213611B (zh) * | 2018-08-01 | 2021-07-02 | 天津字节跳动科技有限公司 | 跨进程通讯方法、装置、终端及存储介质 |
CN109284146B (zh) * | 2018-08-31 | 2021-08-31 | 维沃移动通信有限公司 | 一种轻应用开启方法及移动终端 |
CN109408696B (zh) * | 2018-09-30 | 2021-05-18 | 上海掌门科技有限公司 | 一种用于搜索寄宿程序的方法与设备 |
TWI725352B (zh) * | 2018-11-05 | 2021-04-21 | 緯創資通股份有限公司 | 驗證及授權的方法及驗證伺服器 |
CN109933442B (zh) * | 2019-03-04 | 2022-12-30 | 上海连尚网络科技有限公司 | 小程序平台间的通讯方法、设备和计算机存储介质 |
CN109976922B (zh) * | 2019-03-04 | 2021-02-02 | 上海连尚网络科技有限公司 | 小程序平台间的发现方法、设备和计算机存储介质 |
-
2019
- 2019-03-04 CN CN201910160759.9A patent/CN109976922B/zh active Active
-
2020
- 2020-03-04 US US17/595,375 patent/US20220245005A1/en not_active Abandoned
- 2020-03-04 WO PCT/CN2020/077693 patent/WO2020177697A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7082567B1 (en) * | 1999-10-18 | 2006-07-25 | Rose Blush Software Llc | Enhanced human computer user interface system for searching and browsing documents |
CN108829528A (zh) * | 2018-06-11 | 2018-11-16 | 腾讯科技(深圳)有限公司 | 内容分享方法和装置、消息处理方法和装置 |
CN108846100A (zh) * | 2018-06-19 | 2018-11-20 | 上海掌门科技有限公司 | 快速搜索寄宿应用的方法及设备 |
CN108984225A (zh) * | 2018-06-19 | 2018-12-11 | 上海掌门科技有限公司 | 快速启动寄宿应用的方法及设备 |
CN109359237A (zh) * | 2018-09-30 | 2019-02-19 | 上海掌门科技有限公司 | 一种用于搜索寄宿程序的方法与设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2020177697A1 (zh) | 2020-09-10 |
CN109976922A (zh) | 2019-07-05 |
US20220245005A1 (en) | 2022-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109933442B (zh) | 小程序平台间的通讯方法、设备和计算机存储介质 | |
CN109976922B (zh) | 小程序平台间的发现方法、设备和计算机存储介质 | |
US20220053068A1 (en) | Methods, apparatuses and computer storage media for applet state synchronization | |
CN110389936B (zh) | 一种启动小程序的方法、设备和计算机存储介质 | |
CN110377369B (zh) | 一种运行小程序的方法、设备和计算机存储介质 | |
CN110389935B (zh) | 一种启动小程序的方法、设备和计算机存储介质 | |
EP1233343A2 (en) | Method and radio interface layer comprising a set of application programming interfaces (APIs) | |
EP1628185A2 (en) | Mobile communication terminal and data access control method | |
CN113784049B (zh) | 安卓系统虚拟机的摄像头调用方法、电子设备和存储介质 | |
CN112835632B (zh) | 一种端能力的调用方法、设备和计算机存储介质 | |
CN109150956B (zh) | 一种推送sdk的实现方法、装置、设备和计算机存储介质 | |
CN111427622A (zh) | 应用程序中脚本代码的执行方法及装置 | |
CN106455128B (zh) | 一种wifi点对点数据传输的方法及设备 | |
EP1679916A1 (en) | Method for limiting a data storage function in a mobile communication terminal | |
CN112291602B (zh) | 视频播放方法、电子设备及存储介质 | |
CN115237481A (zh) | 驱动外接设备的方法、装置、设备及存储介质 | |
US11522870B2 (en) | Method for URL analysis and electronic device thereof | |
CN114691067A (zh) | 投屏方法及电子设备 | |
CN112560686A (zh) | 一种动态调用人脸系统、方法及云人脸数据处理端 | |
CN113791777A (zh) | 图片显示方法及装置、计算机可读存储介质及电子设备 | |
KR20080009391A (ko) | 휴대용 단말기에서 홈페이지 서비스를 제공하기 위한 장치및 방법 | |
CN114125048B (zh) | 一种消息推送设置方法、装置、存储介质及电子设备 | |
CN115981576B (zh) | 共享数据的方法、电子设备及存储介质 | |
CN113821248B (zh) | 车机端软件的服务方法、车机端软件及其相关设备 | |
CN114816456A (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 |