概述
每个插件有插件ID(和小程序AppID同一命名空间),形态在功能和结构上和小程序类似,不同的是插件运行在主体小程序的上下文之中,对主体小程序的能力进行扩展。
目前插件主要聚焦于门店小程序的场景,用于三方开发者对各门店进行能力上的扩展,如电子发票、配送和预订等。
在开发时,插件开发商需要和开放平台签约获得特色能力(如支付)
商家购买插件后,在门店启用时,根据插件所需要获得的信息(如门店名称)对插件进行授权,这样插件在运行时可获取被授权的信息
小程序和小程序模板(特别是后者)在开发时,需要明确是否支持插件热插拔,如果需要支持,需预留可插拔的位置,需要定义相关的参数传递处理逻辑,例如对于插件所需要的不同参数的获得与传递
另外对于插件所需要的功能包,需要和开放平台进行签约
商家在选择购买和启用插件的时候,如果插件需要获得商家小程序的信息,需显示出来并让商家进行明确的授权:例如对于电子发票插件,订购和启用时,会提示该插件需要在运行时获得当前门店的名称,这需要商家明确同意,否则不能购买和启用
如果插件需要的信息在商家小程序中并不存在,则表明插件不适用于该商家,不能进行购买和启用
用户可以在主体小程序唤起插件,例如在门店点击电子发票进行开票。插件如果在这个时候需要获得用户相关的信息如用户名称、当前门店消费金额和时间,需要用户明确授权
插件利用获得的用户信息和商家信息,运行相关业务逻辑对用户提供服务