发明内容
为克服相关技术中存在的问题,本申请提供一种配置处理方法、配置平台及相关设备,该配置处理方法、配置平台及相关设备,能够进行统一管理和测试处理,实现不同端之间的通信,提高测试和开发效率。
本申请第一方面提供一种配置处理方法,包括:
获取配置界面中被选择的调用类型,所述调用类型包括网页端调用客户端和客户端调用网页端;
根据所述调用类型,显示可配置的与所述调用类型对应的配置项供配置,其中在网桥工具中设置有统一接入接口及设置通过通用唯一识别码关联调用操作的关联规则;
根据配置后的配置项,生成与所述配置后的配置项所对应的唯一识别ID并存储;
根据所述唯一识别ID和所述配置后的配置项生成测试二维码,供所述网页端或客户端识别所述测试二维码后,获取所述测试二维码对应的配置数据,并根据所述统一接入接口和所述关联规则执行调用操作。
在其中一种实施方式中,所述其中在网桥工具中设置有统一接入接口及设置通过通用唯一识别码关联调用操作的关联规则,包括:
其中所述调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口,其中所述调用类型为网页端调用客户端时,设置通过所述网桥工具下发的通用唯一识别码关联调用操作的关联规则
在其中一种实施方式中,所述方法还包括:
获取参数注册表,读取所述参数注册表中用于注册的设定参数进行存储。
在其中一种实施方式中,所述获取参数注册表,读取所述参数注册表中用于注册的设定参数进行存储,包括:从所述客户端获取客户端方法注册表,读取所述客户端方法注册表中包含的向客户端注册的注册方法进行存储;和/或,
从所述网页端获取网页端函数注册表,读取所述网页端函数注册表中包含的向网页端注册的注册函数进行存储。
在其中一种实施方式中,所述方法还包括:
将从所述客户端方法注册表中获取的新的注册方法,更新到当前方法表中,显示历史方法表和所述当前方法表;
所述历史方法表和所述当前方法表中包括所述注册方法的以下至少一项内容:配置参数、参数格式、回调内容。
在其中一种实施方式中,所述根据所述调用类型,显示可配置的与所述调用类型对应的配置项供配置,包括:
根据所述调用类型,显示以下至少一项可配置的与所述调用类型对应的配置项供配置:配置环境、客户端应用程序版本号、模拟UA、网桥工具名称、路由参数、注册函数。
在其中一种实施方式中,所述网桥工具建立所述网页端与所述客户端通信的固定调用通道,所述固定调用通道包含所述注册方法的API接口,所述网桥工具通过所述注册方法的API接口执行调用。
在其中一种实施方式中,所述客户端包括小程序端、微信内置浏览器端、ios/android端或其他浏览器端。
本申请第二方面提供一种配置处理方法,包括:
识别根据上述方法所生成的测试二维码;
根据所述测试二维码中的参数从配置平台获取所述测试二维码对应的配置数据;
根据所述配置数据配置出配置页面后执行设定操作,其中所述配置页面包括网页端调用客户端的注册方法清单或客户端调用网页端的注册函数。
在其中一种实施方式中,所述识别根据上述的方法所生成的测试二维码,包括:网页端识别根据上述的方法所生成的测试二维码;
所述根据所述配置数据配置出配置页面后执行设定操作包括:
网页端响应于所述配置页面中的配置按钮被触发,弹出预设弹窗,根据所述预设弹窗中被选择的配置参数的参数类型和参数值,分别对目标对象执行渲染操作或修改参数内容;或,
网页端响应于所述配置页面中的调用按钮被触发,通过所述网桥工具建立的所述网页端与所述客户端通信的固定调用通道,调用对应的注册方法来调用所述客户端中相对应的应用服务,并返回回调内容。
在其中一种实施方式中,所述识别根据上述的方法所生成的测试二维码,包括:客户端识别根据上述的方法所生成的测试二维码;
所述根据所述配置数据配置出配置页面后执行设定操作包括:
客户端响应于所述配置页面中的客户端调用网页端的注册函数被触发,通过所述网桥工具建立的所述网页端与所述客户端通信的固定调用通道,调用注册函数来调用所述网页端中相对应的应用服务,并返回回调内容。
本申请第三方面提供一种配置平台,包括:
获取模块,用于获取配置界面中被选择的调用类型,所述调用类型包括网页端调用客户端和客户端调用网页端;
配置项模块,用于根据所述获取模块获取的调用类型,显示可配置的与所述调用类型对应的配置项供配置,其中在网桥工具中设置有统一接入接口及设置通过通用唯一识别码关联调用操作的关联规则;
识别ID模块,用于根据所述配置项模块配置后的配置项,生成与所述配置后的配置项所对应的唯一识别ID并存储;
二维码模块,用于根据所述识别ID模块的唯一识别ID和所述配置后的配置项生成测试二维码,供所述网页端或客户端识别所述测试二维码后,获取所述测试二维码对应的配置数据,并根据所述统一接入接口和所述关联规则执行调用操作。
在其中一种实施方式中,所述配置项模块在所述调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口,在所述调用类型为网页端调用客户端时,设置通过所述网桥工具下发的通用唯一识别码关联调用操作的关联规则。
在其中一种实施方式中,配置处理平台还包括:
注册信息读取模块,用于获取参数注册表,读取所述参数注册表中用于注册的设定参数进行存储。
在其中一种实施方式中,所述注册信息读取模块从所述客户端获取客户端方法注册表,读取所述客户端方法注册表中包含的向客户端注册的注册方法进行存储;和/或,
从所述网页端获取网页端函数注册表,读取所述网页端函数注册表中包含的向网页端注册的注册函数进行存储。
本申请第四方面提供一种网页端设备,包括:
二维码识别模块,用于识别根据上述的方法所生成的测试二维码;
配置数据获取模块,用于根据所述测试二维码中的参数从配置平台获取所述测试二维码对应的配置数据;
配置处理模块,用于根据所述配置数据配置出配置页面后执行设定操作,其中所述配置页面包括网页端调用客户端的注册方法清单;
其中所述配置处理模块响应于所述配置页面中的配置按钮被触发,弹出预设弹窗,根据所述预设弹窗中被选择的配置参数的参数类型和参数值,分别对目标对象执行渲染操作或修改参数内容;或,
其中所述配置处理模块响应于所述配置页面中的调用按钮被触发,通过所述网桥工具建立的所述网页端与所述客户端通信的固定调用通道,调用对应的注册方法来调用所述客户端中相对应的应用服务,并返回回调内容。
本申请第五方面提供一种客户端设备,包括:
二维码识别单元,用于识别根据上述的方法所生成的测试二维码;
配置数据获取单元,用于根据所述测试二维码中的参数从配置平台获取所述测试二维码对应的配置数据;
配置处理单元,用于根据所述配置数据配置出配置页面后执行设定操作,其中所述配置页面包括客户端调用网页端的注册函数;
其中所述配置处理单元响应于所述配置页面中的客户端调用网页端的注册函数被触发,通过所述网桥工具建立的所述网页端与所述客户端通信的固定调用通道,调用注册函数来调用所述网页端中相对应的应用服务,并返回回调内容。
本申请第六方面提供一种电子设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的方法。
本申请第七方面提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的方法。
本申请提供的技术方案可以包括以下有益效果:
本申请实施例提供的配置处理方法,在配置平台中设置的调用类型包括网页端调用客户端和客户端调用网页端,可以根据所述调用类型,显示可配置的与所述调用类型对应的配置项供配置,并且在网桥工具sy-bridge中设置统一接入接口。这样统一入口后,就可以避免全局变量的污染等。相关技术中,bridge的方法一般都是统一放在window下,这样全局变量的污染就会导致某些方法被覆盖,或者出现重新赋值的定义找不到等问题,本申请实施例通过在网桥工具中设置统一接入接口则可以解决这个缺陷,实现进行统一管理和测试处理。另外,本申请实施例设置通过通用唯一识别码关联调用操作的关联规则;这样就在网页端与客户端之间形成了约束,网页端调用客户端只能通过本申请实施例中的网桥工具sy-bridge下发的uuid(Universally Unique Identifier,通用唯一识别码)进行统一关联,回调时也是通过关联uuid进行查找,再返回给各客户端的开发人员来统一bridge的通道参数。相关技术中的bridge代码分别设置在各种不同的客户端中,没有统一的规定约束,虽然比较灵活,但是bridge的方法和业务逻辑完全强耦合,后续查询原因、查询bridge记录变得困难,严重占用开发时间。本申请实施例设置通过所述网桥工具下发的通用唯一识别码关联调用操作的关联规则就可以解决这个缺陷,降低方法和业务逻辑的耦合性,方便后续的查找和分析,从而可以提高测试和开发效率。以及,本申请实施例可以根据配置后的配置项,生成与所述配置后的配置项所对应的唯一识别ID并存储;根据所述唯一识别ID和所述配置后的配置项生成测试二维码,供所述网页端或客户端识别所述测试二维码后,获取所述测试二维码对应的配置数据,并根据所述统一接入接口和所述关联规则执行调用操作。这样,网页端或各客户端的测试或开发人员都可以很方便地利用配置平台已经配置好的配置数据,更方便及更灵活地进行测试或开发,进一步提高测试和开发效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
具体实施方式
下面将参照附图更详细地描述本申请的优选实施方式。虽然附图中显示了本申请的优选实施方式,然而应该理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本申请更加透彻和完整,并且能够将本申请的范围完整地传达给本领域的技术人员。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
目前在软件开发中,H5(网页端)与Native(原生端)底层通信存在较多限制,为解决这种限制而提出的JSBridge,又存在管理比较分散的问题,无法对应用程序中的各种方法统一管理和处理,影响测试和开发效率。针对上述问题,本申请实施例提供一种配置处理方法,能够进行统一管理和测试处理,实现不同端之间的通信,提高测试和开发效率。以下结合附图详细描述本申请实施例的技术方案。
图1是本申请实施例示出的一种配置处理方法的流程示意图。该方法可以应用于配置平台例如在线配置平台(或称为在线配置中心)。其中,客户端或APP(Application,应用程序)是属于Native(原生端),H5或JS(JavaScript,是一种高级编程语言)是属于网页端。
参见图1,该方法包括:
在步骤S101中,获取配置界面中被选择的调用类型,调用类型包括网页端调用客户端和客户端调用网页端。
本申请实施例提供的配置平台,设置不同的调用类型,调用类型包括网页端调用客户端(可简称为H5调用APP或JS调用APP)和客户端调用网页端(可简称为APP调用H5或APP调用JS)。配置界面中向用户显示调用类型,然后获取配置界面中被用户选择的调用类型。
客户端可以包括小程序端、微信内置浏览器端、ios/android端或其他浏览器端,这四种不同的客户端可以简称为四端。本申请实施例可以实现web端和四端统一使用调用。
在步骤S102中,根据调用类型,显示可配置的与调用类型对应的配置项供配置,其中在网桥工具中设置有统一接入接口及设置通过通用唯一识别码关联调用操作的关联规则。
该在网桥工具中设置有统一接入接口及设置通过通用唯一识别码关联调用操作的关联规则,可以包括:其中调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口,其中调用类型为网页端调用客户端时,设置通过网桥工具下发的通用唯一识别码关联调用操作的关联规则。
配置平台根据调用类型,可以显示以下至少一项可配置的与调用类型对应的配置项供配置:配置环境、客户端应用程序版本号、模拟UA(User-Agent,用户代理)、网桥工具名称、路由参数、注册函数。
本申请实施例设置的网桥工具可称为sy-bridge。网桥工具可以用于建立网页端与客户端通信的固定调用通道,固定调用通道包含注册方法的API(ApplicationProgramming Interface,应用程序接口)接口,网桥工具通过注册方法的API接口执行调用。
在调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口。这样统一入口后,就可以避免全局变量的污染等。相关技术中,bridge的方法一般都是统一放在window下,这样全局变量的污染就会导致某些方法被覆盖,或者出现重新赋值的定义找不到等问题,本申请实施例通过在网桥工具中设置统一接入接口则可以解决这个缺陷,实现进行统一管理和测试处理。
在调用类型为网页端调用客户端时,设置通过网桥工具下发的通用唯一识别码关联调用操作的关联规则;这样就在网页端与客户端之间形成了约束,网页端调用客户端只能通过本申请实施例中的网桥工具sy-bridge下发的uuid进行统一关联,回调时也是通过关联uuid进行查找,再返回给各客户端的开发人员来统一bridge的通道参数。也即通过下发的uuid对相关请求指令进行统一关联,然后回调时也关联uuid进行查找,再返回给各个客户端。相关技术中的bridge代码分别设置在各种不同的客户端中,没有统一的规定约束,虽然比较灵活,但是bridge的方法和业务逻辑完全强耦合,后续查询原因、查询bridge记录变得困难,严重占用开发时间。本申请实施例设置通过网桥工具下发的通用唯一识别码关联调用操作的关联规则就可以解决这个缺陷,降低方法和业务逻辑的耦合性,方便后续的查找和分析,从而可以提高测试和开发效率。
在步骤S103中,根据配置后的配置项,生成与配置后的配置项所对应的唯一识别ID并存储。
通过唯一识别ID,则可以与配置后的配置项形成唯一的映射关系,避免信息错误。
在步骤S104中,根据唯一识别ID和配置后的配置项生成测试二维码,供网页端或客户端识别测试二维码后,获取测试二维码对应的配置数据,并根据统一接入接口和关联规则执行调用操作。
通过上述步骤,网页端或各客户端的测试或开发人员都可以很方便地利用配置平台已经配置好的配置数据,更方便及更灵活地进行测试或开发,进一步提高测试和开发效率。
从该实施例可以看出,本申请实施例提供的配置处理方法,在网桥工具中设置统一接入接口,这样统一入口后,就可以避免全局变量的污染等;在调用类型为网页端调用客户端时,设置通过网桥工具下发的通用唯一识别码关联调用操作的关联规则;这样就在网页端与客户端之间形成了约束,网页端调用客户端只能通过本申请实施例中的网桥工具sy-bridge下发的uuid进行统一关联,回调时也是通过关联uuid进行查找,再返回给各客户端的开发人员来统一bridge的通道参数,降低方法和业务逻辑的耦合性,方便后续的查找和分析,从而可以提高测试和开发效率。以及,网页端或各客户端的测试或开发人员都可以很方便地利用配置平台已经配置好的配置数据,更方便及更灵活地进行测试或开发,进一步提高测试和开发效率。
图2是本申请实施例示出的另一种配置处理方法的流程示意图。该方法可以应用于配置平台例如在线配置平台。图2相对图1更详细描述了本申请实施例方案。图2的方法中,配置平台可以获取参数注册表,读取参数注册表中用于注册的设定参数进行存储,例如可以包括从客户端获取客户端方法注册表,读取客户端方法注册表中包含的向客户端注册的注册方法进行存储;和/或,从网页端获取网页端函数注册表,读取网页端函数注册表中包含的向网页端注册的注册函数进行存储。
参见图2,该方法包括:
在步骤S201中,从客户端获取客户端方法注册表,读取客户端方法注册表中包含的向客户端注册的注册方法进行存储。
客户端的开发人员或测试人员,可以将方法注册至客户端的方法注册表中,并提供该方法的API接口。配置平台可以向客户端请求客户端方法注册表,从而获取客户端方法注册表,实时或离线获取客户端方法注册表中的注册方法信息进行存储,并可以同步更新到技术中台中,由技术平台也同时进行存储备份。
在步骤S202中,从网页端获取网页端函数注册表,读取网页端函数注册表中包含的向网页端注册的注册函数进行存储。
网页端的开发人员或测试人员,可以将函数注册至网页端的函数注册表中。配置平台可以向网页端请求网页端函数注册表,从而获取网页端函数注册表,实时或离线获取网页端函数注册表中的注册函数信息进行存储,并可以同步更新到技术中台中,由技术平台也同时进行存储备份。其中注册函数和路由相关,可以包含路由新,使得可以根据路由进行区分。
需说明的是,步骤S201和步骤S202之间没有必然的顺序关系。
在步骤S203中,将从客户端方法注册表中获取的新的注册方法,更新到当前方法表中,显示历史方法表和当前方法表。
配置平台在历史方法表和当前方法表中,可以包括注册方法的以下至少一项内容:配置参数、参数格式、回调内容。
参见图5,本申请实施例提供sy-bridge的配置平台中,主要包括方法对照表、在线配置表,其中对照表可以区分为v1版本和v2版本但不限于此。其中v1版本可以为旧版本的所有方法,包括配置参数、参数格式、回调内容等。其中v2版本是新版本的所有方法,也包括配置参数、参数格式、回调内容等。配置平台可以获取客户端方法注册表内容,进行解析遍历,将发现的新版本添加的方法同步更新到v2版本的list清单中,方便开发同学同步更新、测试或调用。
参见图6,在线配置表中,为开发或测试人员配置的测试bridge项,包括配置的H5调用APP(图6中显示为JS=>APP)的list(清单)、APP调用H5(图6中显示为APP=>JS)在线注册的注册函数。
在步骤S204中,获取配置界面中被选择的调用类型,调用类型包括网页端调用客户端和客户端调用网页端。
开发人员或测试人员可以根据配置平台显示的配置界面选择所需的调用类型,配置平台获取配置界面中被选择的调用类型。步骤S204可以参见步骤S101中的描述,此处不再赘述。
在步骤S205中,根据调用类型,显示可配置的与调用类型对应的配置项供配置,其中调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口,其中调用类型为网页端调用客户端时,设置通过网桥工具下发的通用唯一识别码关联调用操作的关联规则。
步骤S205可以参见步骤S102中的描述。
本申请实施例设置的网桥工具可称为sy-bridge。网桥工具可以用于建立网页端与客户端通信的固定调用通道,固定调用通道包含注册方法的API接口,网桥工具通过注册方法的API接口执行调用。所有的API接口在注册方法中都是可以被查询到,API接口信息在固定调用通道内部都是暴露的。通过该如下函数可以实现将API接口信息暴露:API to APP(paramsName,[data],[callback]):Promise<any>。本申请实施例中,将所有的与客户端交涉的通道,全部都统一放到了sy-bridge,并且设置为通过通道暴露的API接口进行注册和调用。
对于方法,可以分为基础方法和非基础方法(或称为自定义方法)。基础方法例如可以包括设置title(标题)的功能、分享功能以及设置NAV(Navigation,导航链接)功能等的方法。无论是什么类型的方法,一般都需要进行注册,如果发现未注册的方法,则需先完成注册后才能被调用。可以根据方法注册表中方法的方法名称,检测方法是否已注册。例如,检测方法注册表中是否包括该方法的方法名称。如果该方法注册表中包括该方法名称,表示该方法已注册,则可以调用该方法。而如果该方法注册表中不包括该方法名称,表示该方法未注册,需注册后才能调用该方法。
在调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口。这样统一入口后,就可以避免全局变量的污染等。相关技术中,bridge的方法一般都是统一放在window下,这样全局变量的污染就会导致某些方法被覆盖,或者出现重新赋值的定义找不到等问题,本申请实施例通过在网桥工具中设置统一接入接口则可以解决这个缺陷,实现进行统一管理和测试处理。
在调用类型为网页端调用客户端时,设置通过网桥工具下发的通用唯一识别码uuid关联调用操作的关联规则;这样就在网页端与客户端之间形成了约束,网页端调用客户端只能通过本申请实施例中的网桥工具sy-bridge下发的uuid进行统一关联,回调时也是通过关联uuid进行查找,再返回给各客户端的开发人员来统一bridge的通道参数。相关技术中的bridge代码分别设置在各种不同的客户端中,没有统一的规定约束,虽然比较灵活,但是bridge的方法和业务逻辑完全强耦合,后续查询原因、查询bridge记录变得困难,严重占用开发时间。本申请实施例设置通过网桥工具下发的通用唯一识别码关联调用操作的关联规则就可以解决这个缺陷,降低方法和业务逻辑的耦合性,方便后续的查找和分析,从而可以提高测试和开发效率。
本申请实施例针对相关技术中存在的问题,将方法重新梳理,统一入口。也就是说,APP调用web,则统一入口为window.Bridge_For_WEB,避免全局变量的污染等。另外对H5(也称为web)与APP之间怎么进行约束,也是sy-bridge中比较关键的点。本申请实施例将网页端和客户端之间的通信进行了协商,确定了一个统一规则,即:web调用APP,只能通过sy-bridge下发的uuid进行统一关联,回调关联uuid进行查找,再返回给各端统一bridge通道参数。这些bridge通道参数例如可以是时间戳、webview id、当前SDK(软件开发工具包)版本号以及bridge需要的业务参数等。通过上述处理,可以同时最大程度的兼容旧版本方法,使得开发人员、测试人员或业务人员等可以无缝的进行替换处理。
在步骤S206中,根据配置后的配置项,生成与配置后的配置项所对应的唯一识别ID并存储。
本申请实例配置平台提供的在线配置入口,可以配置环境、APP版本号、模拟UA(User-Agent,用户代理)、bridge名称、具体参数、注册函数等等方法。然后,通过Node(Node是一个让JavaScript运行在服务端的开发平台)服务解析,可以存入对应表中生成唯一识别ID。
在步骤S207中,根据唯一识别ID和配置后的配置项生成测试二维码,供网页端或客户端识别测试二维码后,获取测试二维码对应的配置数据,并根据统一接入接口和关联规则执行调用操作。
根据前述步骤S206生成的唯一识别ID、参数等可以生成对应的二维码供使用,生成的二维码可以参见7所示。其中,二维码分为H5和小程序,后续通过扫描二维码,可打开测试界面。
从该实施例可以看出,本申请实施例提供的配置处理方法,网页端或各客户端的测试或开发人员都可以很方便地利用配置平台已经配置好的配置数据,更方便及更灵活地进行测试或开发,进一步提高测试和开发效率。
图3是本申请实施例示出的另一种配置处理方法的流程示意图。该方法可以应用于网页端。
参见图3,该方法包括:
在步骤S301中,网页端识别配置平台所生成的测试二维码。
配置平台生成测试二维码后,网页端可以扫描识别配置平台所生成的测试二维码,可打开测试界面。
在步骤S302中,根据测试二维码中的参数从配置平台获取测试二维码对应的配置数据,根据配置数据配置出配置页面。
开发人员或者测试人员通过网页端扫描二维码后,根据二维码中的具体参数可以去请求到对应的配置数据,根据配置数据配置出具体的页面。
配置出具体的页面中可以包含H5调用APP的list,其中每个方法都有对应的方法名、调用代码、支持平台等。
参见图8,页面中可以提供两个按钮入口,一个为调用按钮,一个为配置按钮。
在步骤S303中,在配置按钮被触发的情况下,网页端响应于配置页面中的配置按钮被触发,弹出预设弹窗,根据预设弹窗中被选择的配置参数的参数类型和参数值,分别对目标对象执行渲染操作或修改参数内容。
其中页面的配置按钮被点击后,可以弹出具体的pop(弹出窗口),根据具体的参数类型、参数值,分别遍历渲染select、timedatepicker、radio、checkbox、input、color等。需说明的是,可以实时修改更新调用参数内容。
在步骤S304中,在调用按钮被触发的情况下,网页端响应于配置页面中的调用按钮被触发,通过网桥工具建立的网页端与客户端通信的固定调用通道,调用对应的注册方法来调用客户端中相对应的应用服务,并返回回调内容。
其中页面的调用按钮被点击后,可以实时地根据配置参数去请求sy-bridge,携带参数来调用客户端方法,同时提供回调内容(callback),实时展示在页面中。
需说明的是,步骤S303和步骤S304没有必然的顺序关系。
本申请实施例中,网页端(H5)可以根据相关参数分析出可调用的方法。例如,可以通过UA、路由参数等信息,判断安装有SDK的当前客户端环境,例如小程序端、微信内置浏览器端、ios/android端、其他浏览器端等,根据具体的客户端环境,可以调用对应的注册方法。例如:H5页面需要调用唤起客户端的相机的方法,一般只需要调用如下方法sy-bridgeAPI.toAPP(‘唤起相机’),就可以调用识别出的客户端中相对应的应用服务,也即可兼容各客户端,而不需要为每一个不用类型的客户端配置不同的调用方法。
图4是本申请实施例示出的另一种配置处理方法的流程示意图。该方法可以应用于客户端。
参见图4,该方法包括:
在步骤S401中,客户端识别配置平台所生成的测试二维码。
配置平台生成测试二维码后,客户端可以扫描识别配置平台所生成的测试二维码,可打开测试界面。客户端可以包括小程序端、微信内置浏览器端、ios/android端或其他浏览器端。
在步骤S402中,根据测试二维码中的参数从配置平台获取测试二维码对应的配置数据,根据配置数据配置出配置页面。
开发人员或者测试人员通过客户端扫描二维码后,根据二维码中的具体参数可以去请求到对应的配置数据,根据配置数据配置出具体的页面。
配置出具体的页面中可以包含APP调用H5的函数,根据配置的函数提供给客户端去调用。本申请实施例中,客户端调用网页端的函数的情况时,也是需先经过sy-bridge进行函数注册。
调用后的具体逻辑可以为开放式,开发人员可自行配置后续流程。例如:配置函数为console.log(a),客户端调用后,或者自行模拟调用后,可以实时的更新到配置平台中。
在步骤S403中,客户端响应于配置页面中的客户端调用网页端的注册函数被触发,通过网桥工具建立的网页端与客户端通信的固定调用通道,调用注册函数来调用网页端中相对应的应用服务,并返回回调内容。
其中页面中的APP调用H5的函数被点击后,根据配置的函数执行调用。
例如,如果需要让客户端调用网页端的某个方法,那么只需要调用如下函数sy-bridge.registerFunc(‘方法名’,Function,[target]),就可以调用网页端中相对应的应用服务,并返回回调内容。
综上所描述,本申请实施例提供的方案,通过在网桥工具中设置统一接入接口则可以实现进行统一管理和测试处理,可以实现web端和四端统一使用调用;能够以标准化的方法统一管理,提供自定义注册通道及调用通道,使得开发人员或测试人员只需按照配置平台提供的参数格式配置即可,以此减少业务代码与网桥工具的耦合;网页端或各客户端的测试或开发人员都可以很方便地利用配置平台已经配置好的配置数据,更方便及更灵活地进行测试或开发,同时减少了查询多个不同类型的客户端的调用方法功能及参数的时间,也进一步提高测试和开发效率。
上述详细描述了本申请提供的方法,相应的,本申请实施例提供一种配置平台及相关设备。
图9是本申请实施例示出的配置平台的结构示意图。
参见图9,本申请实施例示出的配置平台90包括:获取模块91、配置项模块92、识别ID模块93、二维码模块94。
获取模块91,用于获取配置界面中被选择的调用类型,调用类型包括网页端调用客户端和客户端调用网页端。
配置项模块92,用于根据获取模块91获取的调用类型,显示可配置的与调用类型对应的配置项供配置,其中在网桥工具中设置有统一接入接口及设置通过通用唯一识别码关联调用操作的关联规则。例如,配置项模块92在其中调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口,在其中调用类型为网页端调用客户端时,设置通过网桥工具下发的通用唯一识别码关联调用操作的关联规则。
配置项模块92根据调用类型,可以显示以下至少一项可配置的与调用类型对应的配置项供配置:配置环境、客户端应用程序版本号、模拟UA(User-Agent,用户代理)、网桥工具名称、路由参数、注册函数。在调用类型为客户端调用网页端时,在网桥工具中设置统一接入接口。这样统一入口后,就可以避免全局变量的污染等。通过网桥工具下发的通用唯一识别码关联调用操作的关联规则可以降低方法和业务逻辑的耦合性,方便后续的查找和分析,从而可以提高测试和开发效率。
识别ID模块93,用于根据配置项模块92配置后的配置项,生成与配置后的配置项所对应的唯一识别ID并存储。通过唯一识别ID,则可以与配置后的配置项形成唯一的映射关系,避免信息错误。
二维码模块94,用于根据识别ID模块的唯一识别ID和配置后的配置项生成测试二维码,供网页端或客户端识别测试二维码后,获取测试二维码对应的配置数据,并根据统一接入接口和关联规则执行调用操作。
配置平台还可以包括:注册信息读取模块95。
注册信息读取模块95,用于获取参数注册表,读取参数注册表中用于注册的设定参数进行存储。注册信息读取模块95从客户端获取客户端方法注册表,读取客户端方法注册表中包含的向客户端注册的注册方法进行存储;和/或,
从网页端获取网页端函数注册表,读取网页端函数注册表中包含的向网页端注册的注册函数进行存储。
客户端的开发人员或测试人员,可以将方法注册至客户端的方法注册表中,并提供该方法的API接口。配置平台的注册信息读取模块95可以向客户端请求客户端方法注册表,从而获取客户端方法注册表,实时或离线获取客户端方法注册表中的注册方法信息进行存储,并可以同步更新到技术中台中,由技术平台也同时进行存储备份。
图10是本申请实施例示出的网页端设备的结构示意图。
参见图10,本申请实施例示出的网页端设备1000包括:二维码识别模块1011、配置数据获取模块1012、配置处理模块1013。
二维码识别模块1011,用于识别配置平台所生成的测试二维码。
配置数据获取模块1012,用于根据测试二维码中的参数从配置平台获取测试二维码对应的配置数据。
配置处理模块1013,用于根据配置数据配置出配置页面后执行设定操作,其中配置页面包括网页端调用客户端的注册方法清单;
其中配置处理模块1013响应于配置页面中的配置按钮被触发,弹出预设弹窗,根据预设弹窗中被选择的配置参数的参数类型和参数值,分别对目标对象执行渲染操作或修改参数内容;或,
其中配置处理模块1013响应于配置页面中的调用按钮被触发,通过网桥工具建立的网页端与客户端通信的固定调用通道,调用对应的注册方法来调用客户端中相对应的应用服务,并返回回调内容。
例如:H5页面需要调用唤起客户端的相机的方法,一般只需要调用如下方法sy-bridgeAPI.toAPP(‘唤起相机’),就可以调用识别出的客户端中相对应的应用服务,也即可兼容各客户端,而不需要为每一个不用类型的客户端配置不同的调用方法。
图11是本申请实施例示出的客户端设备的结构示意图。
参见图11,本申请实施例示出的客户端设备1100包括:二维码识别单元1101、配置数据获取单元1102、配置处理单元1103。
二维码识别单元1101,用于识别配置平台所生成的测试二维码。
配置数据获取单元1102,用于根据测试二维码中的参数从配置平台获取测试二维码对应的配置数据。
配置处理单元1103,用于根据配置数据配置出配置页面后执行设定操作,其中配置页面包括客户端调用网页端的注册函数;
其中配置处理单元1103响应于配置页面中的客户端调用网页端的注册函数被触发,通过网桥工具建立的网页端与客户端通信的固定调用通道,调用注册函数来调用网页端中相对应的应用服务,并返回回调内容。
例如,如果需要让客户端调用网页端的某个方法,那么只需要调用如下函数sy-bridge.registerFunc(‘方法名’,Function,[target]),就可以调用网页端中相对应的应用服务,并返回回调内容。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不再做详细阐述说明。
图12是本申请实施例示出的电子设备的结构示意图。该电子设备例如可以是配置平台设备、网页端设备或客户端设备等。
参见图12,电子设备1200包括存储器1210和处理器1220。
处理器1220可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器1210可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器1020或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器1210可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器1210可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器1210上存储有可执行代码,当可执行代码被处理器1220处理时,可以使处理器1220执行上文述及的方法中的部分或全部。
上文中已经参考附图详细描述了本申请的方案。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。本领域技术人员也应该知悉,说明书中所涉及的动作和模块并不一定是本申请所必须的。另外,可以理解,本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减,本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
此外,根据本申请的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本申请的上述方法中部分或全部步骤的计算机程序代码指令。
或者,本申请还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或电子设备、服务器等)的处理器执行时,使所述处理器执行根据本申请的上述方法的各个步骤的部分或全部。
本领域技术人员还将明白的是,结合这里的申请所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本申请的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。