CN107643954B - Sdk接入系统和方法 - Google Patents
Sdk接入系统和方法 Download PDFInfo
- Publication number
- CN107643954B CN107643954B CN201610578812.3A CN201610578812A CN107643954B CN 107643954 B CN107643954 B CN 107643954B CN 201610578812 A CN201610578812 A CN 201610578812A CN 107643954 B CN107643954 B CN 107643954B
- Authority
- CN
- China
- Prior art keywords
- service
- sdk
- native
- component
- parameters
- 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
Abstract
本发明公开了一种SDK接入系统,所述SDK接入系统包括系统组件、原生类组件和软件开发工具包SDK,其中:所述系统组件,用于根据输入的控制指令获取业务类型和业务参数;从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件;所述原生类组件,用于将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给所述SDK;所述SDK,用于根据所述转换后的业务参数执行所述控制指令。本发明还公开了一种SDK接入方法。本发明实现了通过原应用软件即可以为用户提供第三方应用软件的各项功能,增强并拓展了原应用软件的辅助功能,减少了原应用软件的研发成本。
Description
技术领域
本发明涉及网络技术领域,尤其涉及一种SDK接入系统和方法。
背景技术
应用软件由于能够为用户提供丰富、个性化的功能,受到了用户的欢迎。目前,大多数的应用软件都是针对某一特定功能进行设计的,例如社交软件主要用于聊天会话,旅游软件主要用于景点介绍、门票购买等。
但是,功能过于单一并不能满足用户多样化的需求,因此,应用软件中还包括辅助功能,例如旅游软件中提供地图供用户查看景点等。由于地图的研发时间成本和资金成本较高,导致应用软件中通常携带的地图功能单一,仅能进行简单的缩放、查看,不能满足用户多样化的需求。
发明内容
本发明的主要目的在于提供一种SDK接入系统和方法,旨在解决应用软件的辅助功能研发成本高技术问题。
为实现上述目的,本发明提供一种SDK接入系统,所述SDK接入系统包括系统组件、原生类组件和软件开发工具包SDK,其中:
所述系统组件,用于根据输入的控制指令获取业务类型和业务参数;从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件;
所述原生类组件,用于将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给所述SDK;
所述SDK,用于根据所述转换后的业务参数执行所述控制指令。
可选的,所述SDK接入系统还包括:
封装模块,用于封装所述SDK得到原生类,根据预先配置的业务需求信息获取对应的各业务类型,暴露所述原生类中所述各业务类型对应的各接口;封装所述原生类得到所述原生类组件。
可选的,所述封装模块还用于,
将预设的所述业务类型对应的业务定制参数配置到所述原生类组件中;
所述原生类组件,还用于将所述业务参数转换为预设的数据类型;将所述转换后的业务参数和所述业务类型对应的业务定制参数发送给所述SDK;
所述SDK,用于根据所述转换后的业务参数和所述业务类型对应的业务定制参数执行所述控制指令。
可选的,所述系统组件还用于,
根据所述业务需求信息对应的各业务类型,校验所述控制指令是否需要调用所述SDK。
可选的,所述SDK还用于,
控制所述业务类型对应的类根据所述转换后的业务参数执行所述控制指令。
为实现上述目的,本发明还提供一种SDK接入方法,所述SDK接入方法包括以下步骤:
根据输入的控制指令获取业务类型和业务参数;
从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件;
控制所述原生类组件将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给SDK;
控制所述SDK根据所述转换后的业务参数执行所述控制指令。
可选的,所述根据输入的控制指令获取业务类型和业务参数的步骤之前,还包括:
封装所述SDK得到原生类,根据预先配置的业务需求信息获取对应的各业务类型,暴露所述原生类中所述各业务类型对应的各接口;
封装所述原生类得到所述原生类组件。
可选的,所述封装所述原生类得到所述原生类组件的步骤之后,还包括:
将预设的所述业务类型对应的业务定制参数配置到所述原生类组件中;
所述控制所述原生类组件将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给SDK的步骤包括:
控制所述原生类组件将所述业务参数转换为预设的数据类型;
控制所述原生类组件将所述转换后的业务参数和所述业务类型对应的业务定制参数发送给所述SDK;
所述控制所述SDK根据所述转换后的业务参数执行所述控制指令的步骤包括:
控制所述SDK根据所述转换后的业务参数和所述业务类型对应的业务定制参数执行所述控制指令。
可选的,所述从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件的步骤之前,还包括:
根据所述业务需求信息对应的各业务类型,校验所述控制指令是否需要调用所述SDK;若所述控制指令需要调用所述SDK,则转入执行步骤:从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件。
可选的,所述控制所述SDK根据所述转换后的业务参数执行所述控制指令的步骤包括:
控制所述SDK中所述业务类型对应的类,根据所述转换后的业务参数执行所述控制指令。
本发明实施例提出的一种SDK接入系统和方法,通过系统组件在收到用户输入的控制指令后,获取业务类型和业务参数;然后从原生类组件暴露的接口中选取业务类型对应的接口,并基于选取的接口将业务参数发送给原生类组件,从而实现了将不同功能的业务参数发送给对应的、能够执行此功能的接口;原生类组件在收到业务参数后,将业务参数转换为预设的、SDK能够识别并执行的数据类型,然后再将转换后的业务参数发送给SDK;SDK收到转换后的业务参数后,执行控制指令,为用户提供控制指令对应的功能。本发明充分利用已有的资源,将第三方应用软件的SDK接入原应用软件,实现了通过原应用软件即可以为用户提供第三方应用软件的各项功能,增强并拓展了原应用软件的辅助功能,减少了原应用软件的研发成本。
附图说明
图1为本发明SDK接入系统第一实施例和第五实施例的功能模块示意图;
图2为本发明SDK接入系统第二实施例、第三实施例和第四实施例的功能模块示意图;
图3为本发明SDK接入方法第一实施例的流程示意图;
图4为本发明SDK接入方法第二实施例的流程示意图;
图5为本发明SDK接入方法第三实施例的流程示意图;
图6为本发明SDK接入方法第四实施例的流程示意图;
图7为本发明SDK接入方法第五实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,本发明软件开发工具包SDK接入系统第一实施例提供一种SDK接入系统,所述SDK接入系统包括系统组件10、原生类组件20和软件开发工具包SDK30,其中:
所述系统组件10,用于根据输入的控制指令获取业务类型和业务参数;从原生类组件20暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件20。
本实施例使用专业的、第三方应用软件的软件开发工具包,也即SDK(SoftwareDevelopment Kit),接入原应用软件,从而可以通过原应用软件为用户提供更加专业的第三方应用软件的功能,降低了原应用软件的研发成本,可以为用户提供更加丰富的应用功能。
具体的,作为一种实施方式,SDK接入系统包括系统组件10、原生类组件20和SDK30。
本发明SDK接入系统可应用于各种软件开发框架,本实施例中以React Native(简称RN)进行举例说明。React Native是由Facebook提供的一种编写原生应用软件的框架。本实施例中,系统组件10为原应用软件的组件,为RN组件;原生类组件20是RN组件;SDK30为第三方应用软件的软件开发工具包,本实施例以地图SDK为例进行举例说明。
则当用户打开原应用软件,使用附加的地图功能时,系统组件10接收用户输入的控制指令,例如输入景点进行定位,或是输入景点进行路线查询等。
然后,系统组件10根据控制指令,获取业务类型和业务参数。业务类型为当前控制指令的类型,例如定位指令、路线查询指令、标注指令等;业务参数则记载了执行当前控制指令所需的参数数据,例如定位的坐标,查询路线的两点坐标等信息。
然后,系统组件10从原生类组件20暴露的接口中,查询当前业务类型对应的接口。需要说明的是,原生类组件20暴露的接口包括了能够为应用软件提供的各类型指令所对应的接口。
在查找到当前业务类型对应的接口后,系统组件10基于选取的接口将业务参数发送给原生类组件20。
所述原生类组件20,用于将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给所述SDK30。
原生类组件20在收到系统组件10发送的业务参数后,根据预设的数据类型转换业务参数,以供SDK30能够识别业务参数,执行控制指令。例如,系统组件10的业务参数为坐标字符串,预设的数据类型为数组,则原生类组件20将收到的坐标字符串转换为坐标数组。
然后,原生类组件20调用SDK30的接口,将转换后的业务参数发送给SDK30。
所述SDK30,用于根据所述转换后的业务参数执行所述控制指令。
SDK30在收到原生类组件20发送的转换后的业务参数后,根据转换后的业务参数执行当前控制指令,例如控制指令为一坐标点的定位,则SDK30根据坐标参数在地图中查找到此坐标,并进行标注、显示。
由此,实现了第三方地图SDK的接入。原应用软件无需重复开发地图包,即可为用户提供专业的地图功能。
在本实施例中,SDK接入系统包括系统组件10、原生类组件20和SDK30。系统组件10在收到用户输入的控制指令后,获取业务类型和业务参数;然后从原生类组件20暴露的接口中选取业务类型对应的接口,并基于选取的接口将业务参数发送给原生类组件20,从而实现了将不同功能的业务参数发送给对应的、能够执行此功能的接口;原生类组件20在收到业务参数后,将业务参数转换为预设的、SDK30能够识别并执行的数据类型,然后再将转换后的业务参数发送给SDK30;SDK30收到转换后的业务参数后,执行控制指令,为用户提供控制指令对应的功能。本实施例充分利用已有的资源,将第三方应用软件的SDK接入原应用软件,实现了通过原应用软件即可以为用户提供第三方应用软件的各项功能,增强并拓展了原应用软件的辅助功能,减少了原应用软件的研发成本。
进一步的,参照图2,本发明SDK接入系统第二实施例提供一种SDK接入系统,基于上述图1所示的实施例,所述SDK接入系统还包括:
封装模块40,用于封装所述SDK30得到原生类,根据预先配置的业务需求信息获取对应的各业务类型,暴露所述原生类中所述各业务类型对应的各接口;封装所述原生类得到所述原生类组件20。
本实施例中,原生类组件20是由SDK30封装得到的。
具体的,作为一种实施方式,SDK30中包括了实现各项功能业务对应的各类,封装模块40封装SDK30得到原生类,并仅对外公开暴露的接口,通过暴露的接口可以调用SDK30对应的各项业务。不同的接口对应不同的业务类型。
其中,暴露的接口是根据预先配置的业务需求信息进行配置的。业务需求信息包括了当前需要保留或可能调用的各业务,封装模块40可以获取对应的各业务类型。需要说明的是,可以根据功能需求配置保留SDK30的全部业务,或者是部分业务。
然后,封装模块40根据业务需求信息中各业务类型暴露原生类对应的接口,后续可以根据业务类型查找到对应的接口。
然后,封装模块40封装原生类得到RN层的原生类组件20,从而使得原生类组件20在RN层面可以与其他的RN组件进行嵌套开发使用,从而可以结合原应用软件与SDK进行嵌套开发,在SDK提供的功能的基础上,进一步丰富应用软件的功能。
在本实施例中,SDK接入系统还包括封装模块40,用于封装SDK30得到原生类;根据预先配置的业务需求信息获取对应的各业务类型,并暴露原生类中各业务类型对应的各接口,从而使得系统组件10可以根据不同的业务类型查找到对应的接口,进而调用对应的功能;然后,封装模块40封装原生类得到原生类组件20,得到的原生类组件20可以和原生系统中的原生组件,例如系统组件10等进行嵌套配置开发,在SDK30的基础上结合原应用软件,开发更加丰富多样化的功能。
进一步的,参照图2,本发明SDK接入系统第三实施例提供一种SDK接入系统,基于上述本发明SDK接入系统第二实施例,所述封装模块40还用于,
将预设的所述业务类型对应的业务定制参数配置到所述原生类组件20中;
所述原生类组件20,还用于将所述业务参数转换为预设的数据类型;将所述转换后的业务参数和所述业务类型对应的业务定制参数发送给所述SDK30;
所述SDK30,用于根据所述转换后的业务参数和所述业务类型对应的业务定制参数执行所述控制指令。
本实施例中,封装模块40还可以根据业务需求,为不同的业务拓展个性化的、SDK30本身不能提供的功能。
具体的,作为一种实施方式,可以预先为各业务类型配置对应的业务定制参数,以优化各业务。不同的业务类型配置的业务定制参数不同;可根据业务需要为全部的业务类型分别配置对应的业务定制参数,也可以仅选取需要的业务类型配置对应的业务定制参数,可根据需要灵活设置。
例如,SDK30提供的定位业务在根据输入的景点查询指令获取景点位置后,使用统一的预设定位图标标识此景点位置,则可以预先配置各景点对应的个性图标作为景点查询业务对应的业务定制参数,从而在用户查询景点时,使用个性化的定位图标标识不同的景点,使用户更加清楚的辨认不同的景点,增强地图显示的内容丰富性。
然后,封装模块40将各业务类型对应的业务定制参数配置到原生类组件20中。
当原生组件类20收到业务参数时,根据当前的业务类型查询是否配置有此业务对应的业务定制参数;若此业务类型配置有对应的业务定制参数,则获取此业务类型对应的业务定制参数。
然后,原生组件类20将业务参数转换为预设的数据类型,并将转换后的业务参数和当前业务类型对应的业务定制参数发送给SDK30。
SDK30在收到转换后的业务参数和当前业务类型对应的业务定制参数后,根据转换后的业务参数和当前业务类型对应的业务定制参数执行控制指令。
例如,当前的控制指令为路线查询,路线查询业务对应的业务定制参数包括路线的颜色、线条粗细等,则SDK30在收到转换后的业务参数和当前业务类型对应的业务定制参数后,根据配置的路线颜色、线条粗细,显示对应的路线。
由此,实现了业务定制。
在本实施例中,封装模块40还用于将业务类型对应的预设业务定制参数配置到原生类组件20中;则原生类组件20在收到业务参数后,将转换后的业务参数和业务类型对应的业务定制参数发送给SDK,以控制SDK进行业务定制;SDK30根据转换后的业务参数和业务类型对应的业务定制参数执行控制指令,实现了根据业务定制参数定制SDK的业务。本实施例通过为业务类型配置对应的业务定制参数,从而在SDK30原有业务的基础上,实现了个性化的定制,可以不局限于第三方与应用,在第三方应用SDK的基础上进行拓展,为用户提供更加丰富的功能。
进一步的,参照图2,本发明SDK接入系统第四实施例提供一种SDK接入系统,基于上述本发明SDK第二实施例或第三实施例(本实施例以本发明SDK接入系统第二实施例为例),所述系统组件10还用于,
根据所述业务需求信息对应的各业务类型,校验所述控制指令是否需要调用所述SDK30。
在本实施例中,系统组件10在获取业务类型和业务参数后,根据业务需求信息,判断当前控制指令是否需要调用SDK30。
具体的,作为一种实施方式,系统组件10根据业务需求信息对应的各业务类型,查找当前控制指令对应的业务类型。
若在业务需求信息对应的各业务类型中查找到当前控制指令对应的业务类型,则系统组件10判断当前需要调用SDK30,然后,从原生类组件20暴露的接口中选取当前业务类型对应的接口,并基于选取的接口将业务参数发送给原生类组件20。
若在业务需求信息对应的各业务类型中未查找到当前控制指令对应的业务类型,则系统组件10判断当前不需要调用SDK30,当前的控制指令仅需要原应用软件即可执行,不需要将业务参数发送给原生类组件20。
由此,实现了对业务类型的校验。
在本实施例中,系统组件10根据所述业务需求信息对应的各业务类型,校验当前控制指令是否需要调用SDK30,仅在当前SDK30能够为系统组件10提供业务支持时,才将业务参数发送给原生类组件,避免了数据的误发送。
进一步的,参照图1,本发明SDK接入系统第五实施例提供一种SDK接入系统,基于上述本发明SDK接入系统第一实施例、第二实施例、第三实施例或第四实施例(本实施例以本发明SDK接入系统第一实施例为例),所述SDK30还用于,
控制所述业务类型对应的类根据所述转换后的业务参数执行所述控制指令。
在本实施例中,原生类组件20将转换后的业务参数发送给SDK30中当前业务类型对应的类,SDK30中当前业务类型对应的类根据收到的业务参数执行控制指令。
若原生类组件20发送的数据包括转换后的业务参数和业务定制参数,则SDK30控制当前业务类型对应的类根据收到的转换后的业务参数和业务定制参数执行控制指令。
在本实施例中,SDK30还用于控制业务类型对应的类根据转换后的业务参数执行控制指令。本实施例实现了对SDK30中各业务类型对应的类的直接调用。
参照图3,本发明软件开发工具包SDK接入方法提供一种SDK接入方法,所述SDK接入方法包括以下步骤:
步骤S10、根据输入的控制指令获取业务类型和业务参数。
本实施例使用专业的、第三方应用软件的软件开发工具包,也即SDK(SoftwareDevelopment Kit),接入原应用软件,从而可以通过原应用软件为用户提供更加专业的第三方应用软件的功能,降低了原应用软件的研发成本,可以为用户提供更加丰富的应用功能。
具体的,作为一种实施方式,本发明可应用于各种软件开发框架,本实施例中以React Native(简称RN)进行举例说明。React Native是由Facebook提供的一种编写原生应用软件的框架。本实施例中,系统组件为原应用软件的组件,为RN组件;原生类组件是根据SDK封装得到的RN组件;SDK为第三方应用软件的软件开发工具包,本实施例以地图SDK为例进行举例说明。
则当用户打开原应用软件,使用附加的地图功能时,系统组件接收用户输入的控制指令,例如输入景点进行定位,或是输入景点进行路线查询等。
然后,系统组件根据控制指令,获取业务类型和业务参数。业务类型为当前控制指令的类型,例如定位指令、路线查询指令、标注指令等;业务参数则记载了执行当前控制指令所需的参数数据,例如定位的坐标,查询路线的两点坐标等信息。
步骤S20、从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件。
在获取业务类型和业务参数后,系统组件从原生类组件暴露的接口中,查询当前业务类型对应的接口。需要说明的是,原生类组件暴露的接口包括了能够为应用软件提供的各类型业务所对应的接口。
在查找到当前业务类型对应的接口后,系统组件基于选取的接口将业务参数发送给原生类组件。
步骤S30、控制所述原生类组件将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给SDK。
原生类组件在收到系统组件发送的业务参数后,根据预设的数据类型转换业务参数,以供SDK能够识别业务参数,执行控制指令。例如,系统组件的业务参数为坐标字符串,预设的数据类型为数组,则原生类组件将收到的坐标字符串转换为坐标数组。
然后,原生类组件调用SDK的接口,将转换后的业务参数发送给SDK。
步骤S40、控制所述SDK根据所述转换后的业务参数执行所述控制指令。
SDK在收到原生类组件发送的转换后的业务参数后,根据转换后的业务参数执行当前控制指令,例如控制指令为一坐标点的定位,则SDK根据坐标参数在地图中查找到此坐标,并进行标注、显示。
由此,实现了第三方地图SDK的接入。原应用软件无需重复开发地图包,即可为用户提供专业的地图功能。
在本实施例中,在收到用户输入的控制指令后,获取业务类型和业务参数;然后从原生类组件暴露的接口中选取业务类型对应的接口,并基于选取的接口将业务参数发送给原生类组件,从而实现了将不同功能的业务参数发送给对应的、能够执行此功能的接口;然后,控制原生类组件在收到业务参数后,将业务参数转换为预设的、SDK能够识别并执行的数据类型,然后再将转换后的业务参数发送给SDK;然后,控制SDK收到转换后的业务参数后执行控制指令,为用户提供控制指令对应的功能。本实施例充分利用已有的资源,将第三方应用软件的SDK接入原应用软件,实现了通过原应用软件即可以为用户提供第三方应用软件的各项功能,增强并拓展了原应用软件的辅助功能,减少了原应用软件的研发成本。
进一步的,参照图4,本发明SDK接入方法第二实施例提供一种SDK接入方法,基于上述图3所示的实施例,所述步骤S10之前,还包括:
步骤S50、封装所述SDK得到原生类,根据预先配置的业务需求信息获取对应的各业务类型,暴露所述原生类中所述各业务类型对应的各接口;
步骤S60、封装所述原生类得到所述原生类组件。
本实施例中,原生类组件是由SDK封装得到的。
具体的,作为一种实施方式,SDK中包括了实现各项功能业务对应的各类,通过封装SDK得到原生类,并仅对外公开暴露的接口,使得通过暴露的接口可以调用SDK对应的各项业务。不同的接口对应不同的业务类型。
其中,暴露的接口是根据预先配置的业务需求信息进行配置的。业务需求信息包括了当前需要保留或可能调用的各业务,可以获取对应的各业务类型。需要说明的是,可以根据功能需求配置保留SDK的全部业务,或者是部分业务。
然后,根据业务需求信息中各业务类型暴露原生类对应的接口,后续可以根据业务类型查找到对应的接口。
然后,封装原生类得到RN层的原生类组件,从而使得原生类组件在RN层面可以与其他的RN组件进行嵌套开发使用,从而可以结合原应用软件与SDK进行嵌套开发,在SDK提供的功能的基础上,进一步丰富应用软件的功能。
在本实施例中,于封装SDK得到原生类,根据预先配置的业务需求信息获取对应的各业务类型,并暴露原生类中各业务类型对应的各接口,从而可以根据不同的业务类型查找到对应的接口,进而调用对应的功能;然后,封装原生类得到原生类组件,得到的原生类组件可以和原生系统中的原生组件,例如系统组件等进行嵌套配置开发,在SDK的基础上结合原应用软件,开发更加丰富多样化的功能。
进一步的,参照图5,本发明SDK接入方法第三实施例提供一种SDK接入方法,基于上述图4所示的实施例,所述步骤S60之后,还包括:
步骤S70、将预设的所述业务类型对应的业务定制参数配置到所述原生类组件中;
所述步骤S30包括:
步骤S31、控制所述原生类组件将所述业务参数转换为预设的数据类型;
步骤S32、控制所述原生类组件将所述转换后的业务参数和所述业务类型对应的业务定制参数发送给所述SDK;
所述步骤S40包括:
步骤S41、控制所述SDK根据所述转换后的业务参数和所述业务类型对应的业务定制参数执行所述控制指令。
本实施例中,还可以根据业务需求,为不同的业务拓展个性化的、SDK本身不能提供的功能。
具体的,作为一种实施方式,可以预先为各业务类型配置对应的业务定制参数,以优化各业务。不同的业务类型配置的业务定制参数不同;可根据业务需要为全部的业务类型分别配置对应的业务定制参数,也可以仅选取需要的业务类型配置对应的业务定制参数,可根据需要灵活设置。
例如,SDK提供的定位业务在根据输入的景点查询指令获取景点位置后,使用统一的预设定位图标标识此景点位置,则可以预先配置各景点对应的个性图标作为景点查询业务对应的业务定制参数,从而在用户查询景点时,使用个性化的定位图标标识不同的景点,使用户更加清楚的辨认不同的景点,增强地图显示的内容丰富性。
然后,将各业务类型对应的业务定制参数配置到原生类组件中。
当原生组件类收到业务参数时,根据当前的业务类型查询是否配置有此业务对应的业务定制参数;若此业务类型配置有对应的业务定制参数,则获取此业务类型对应的业务定制参数。
然后,原生组件类将业务参数转换为预设的数据类型,并将转换后的业务参数和当前业务类型对应的业务定制参数发送给SDK。
SDK在收到转换后的业务参数和当前业务类型对应的业务定制参数后,根据转换后的业务参数和当前业务类型对应的业务定制参数执行控制指令。
例如,当前的控制指令为路线查询,路线查询业务对应的业务定制参数包括路线的颜色、线条粗细等,则SDK在收到转换后的业务参数和当前业务类型对应的业务定制参数后,根据配置的路线颜色、线条粗细,显示对应的路线。
由此,实现了业务定制。
在本实施例中,将业务类型对应的预设业务定制参数配置到原生类组件中;则原生类组件在收到业务参数后,将转换后的业务参数和业务类型对应的业务定制参数发送给SDK,以控制SDK进行业务定制;然后,控制SDK根据转换后的业务参数和业务类型对应的业务定制参数执行控制指令,实现了根据业务定制参数定制SDK的业务。本实施例通过为业务类型配置对应的业务定制参数,从而在SDK原有业务的基础上,实现了个性化的定制,可以不局限于第三方与应用,在第三方应用SDK的基础上进行拓展,为用户提供更加丰富的功能。
进一步的,参照图6,本发明SDK接入方法第四实施例提供一种SDK接入方法,基于上述图4或图5所示的实施例(本实施例以图4为例),所述步骤S20之前,还包括:
步骤S80、根据所述业务需求信息对应的各业务类型,校验所述控制指令是否需要调用所述SDK;若所述控制指令需要调用所述SDK,则转入执行步骤:S20。
在本实施例中,获取业务类型和业务参数后,根据业务需求信息,判断当前控制指令是否需要调用SDK。
具体的,作为一种实施方式,根据业务需求信息对应的各业务类型,查找当前控制指令对应的业务类型。
若在业务需求信息对应的各业务类型中查找到当前控制指令对应的业务类型,则判断当前需要调用SDK,然后,从原生类组件暴露的接口中选取当前业务类型对应的接口,并基于选取的接口将业务参数发送给原生类组件。
若在业务需求信息对应的各业务类型中未查找到当前控制指令对应的业务类型,则判断当前不需要调用SDK,当前的控制指令仅需要原应用软件即可执行,不需要将业务参数发送给原生类组件。
由此,实现了对业务类型的校验。
在本实施例中,根据所述业务需求信息对应的各业务类型,校验当前控制指令是否需要调用SDK,仅在当前SDK能够为原应用软件提供业务支持时,才将业务参数发送给原生类组件,避免了数据的误发送。
进一步的,参照图7,本发明SDK接入方法第五实施例提供一种SDK接入方法,基于上述图3、图4、图5或图6所示的实施例(本实施例以图3为例),所述S40的步骤包括:
所述S42、控制所述SDK中所述业务类型对应的类,根据所述转换后的业务参数执行所述控制指令。
在本实施例中,原生类组件将转换后的业务参数发送给SDK中当前业务类型对应的类,控制SDK中当前业务类型对应的类根据收到的业务参数执行控制指令。
若原生类组件发送的数据包括转换后的业务参数和业务定制参数,则控制SDK中当前业务类型对应的类根据收到的转换后的业务参数和业务定制参数执行控制指令。
在本实施例中,控制SDK中当前业务类型对应的类根据转换后的业务参数执行控制指令。本实施例实现了对SDK中各业务类型对应的类的直接调用。
以上仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种SDK接入系统,其特征在于,所述SDK接入系统包括系统组件、原生类组件、封装模块和软件开发工具包SDK,其中:
所述封装模块,用于封装所述SDK得到原生类,根据预先配置的业务需求信息获取对应的各业务类型,仅对外公开暴露所述原生类中所述各业务类型对应的各接口,其中,所述SDK包括了实现各项功能业务对应的各类;封装所述原生类得到所述原生类组件,以使封装得到的原生类组件和原生系统中的原生组件进行嵌套配置开发;
所述系统组件,用于根据输入的控制指令获取业务类型和业务参数;从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件;
所述原生类组件,用于将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给所述SDK;
所述SDK,用于根据所述转换后的业务参数执行所述控制指令。
2.如权利要求1所述的SDK接入系统,其特征在于,所述封装模块还用于,
将预设的所述业务类型对应的业务定制参数配置到所述原生类组件中;
所述原生类组件,还用于将所述业务参数转换为预设的数据类型;将所述转换后的业务参数和所述业务类型对应的业务定制参数发送给所述SDK;
所述SDK,用于根据所述转换后的业务参数和所述业务类型对应的业务定制参数执行所述控制指令。
3.如权利要求1或2所述的SDK接入系统,其特征在于,所述系统组件还用于,
根据所述业务需求信息对应的各业务类型,校验所述控制指令是否需要调用所述SDK。
4.如权利要求1所述的SDK接入系统,其特征在于,所述SDK还用于,
控制所述业务类型对应的类根据所述转换后的业务参数执行所述控制指令。
5.一种SDK接入方法,其特征在于,所述SDK接入方法包括以下步骤:
封装SDK得到原生类,根据预先配置的业务需求信息获取对应的各业务类型,仅对外公开暴露所述原生类中所述各业务类型对应的各接口,其中,所述SDK包括了实现各项功能业务对应的各类;
封装所述原生类得到所述原生类组件,以使封装得到的原生类组件和原生系统中的原生组件进行嵌套配置开发;
根据输入的控制指令获取业务类型和业务参数;
从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件;
控制所述原生类组件将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给SDK;
控制所述SDK根据所述转换后的业务参数执行所述控制指令。
6.如权利要求5所述的SDK接入方法,其特征在于,所述封装所述原生类得到所述原生类组件的步骤之后,还包括:
将预设的所述业务类型对应的业务定制参数配置到所述原生类组件中;
所述控制所述原生类组件将所述业务参数转换为预设的数据类型,并将转换后的业务参数发送给SDK的步骤包括:
控制所述原生类组件将所述业务参数转换为预设的数据类型;
控制所述原生类组件将所述转换后的业务参数和所述业务类型对应的业务定制参数发送给所述SDK;
所述控制所述SDK根据所述转换后的业务参数执行所述控制指令的步骤包括:
控制所述SDK根据所述转换后的业务参数和所述业务类型对应的业务定制参数执行所述控制指令。
7.如权利要求5或6所述的SDK接入方法,其特征在于,所述从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件的步骤之前,还包括:
根据所述业务需求信息对应的各业务类型,校验所述控制指令是否需要调用所述SDK;若所述控制指令需要调用所述SDK,则转入执行步骤:从原生类组件暴露的接口中选取所述业务类型对应的接口,并基于所述选取的接口将所述业务参数发送给所述原生类组件。
8.如权利要求5所述的SDK接入方法,其特征在于,所述控制所述SDK根据所述转换后的业务参数执行所述控制指令的步骤包括:
控制所述SDK中所述业务类型对应的类,根据所述转换后的业务参数执行所述控制指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610578812.3A CN107643954B (zh) | 2016-07-20 | 2016-07-20 | Sdk接入系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610578812.3A CN107643954B (zh) | 2016-07-20 | 2016-07-20 | Sdk接入系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107643954A CN107643954A (zh) | 2018-01-30 |
CN107643954B true CN107643954B (zh) | 2020-08-04 |
Family
ID=61108779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610578812.3A Active CN107643954B (zh) | 2016-07-20 | 2016-07-20 | Sdk接入系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107643954B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115934158B (zh) * | 2023-02-23 | 2023-06-23 | 云筑信息科技(成都)有限公司 | 一种基于业务身份的个性化配置方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007101713A2 (en) * | 2006-03-08 | 2007-09-13 | Tomtom International B.V. | Methods of customizing navigation systems and corresponding navigation devices |
CN102360292A (zh) * | 2011-09-29 | 2012-02-22 | 广东高新兴通信股份有限公司 | 一种基于插件化接入设备的管理系统 |
CN103488489A (zh) * | 2013-09-30 | 2014-01-01 | 乐视网信息技术(北京)股份有限公司 | 一种数据处理方法及装置 |
CN104679513A (zh) * | 2015-02-12 | 2015-06-03 | 无锡识凌科技有限公司 | 一种智能终端中的设备驱动架构开发方法 |
CN104965722A (zh) * | 2014-07-29 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种显示信息的方法及装置 |
CN105141686A (zh) * | 2015-08-19 | 2015-12-09 | 贵阳朗玛信息技术股份有限公司 | 一种实现蓝牙通信的方法及装置 |
CN105635113A (zh) * | 2015-12-22 | 2016-06-01 | 深圳前海微众银行股份有限公司 | 基于sdk的远程业务办理方法及系统 |
-
2016
- 2016-07-20 CN CN201610578812.3A patent/CN107643954B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007101713A2 (en) * | 2006-03-08 | 2007-09-13 | Tomtom International B.V. | Methods of customizing navigation systems and corresponding navigation devices |
CN102360292A (zh) * | 2011-09-29 | 2012-02-22 | 广东高新兴通信股份有限公司 | 一种基于插件化接入设备的管理系统 |
CN103488489A (zh) * | 2013-09-30 | 2014-01-01 | 乐视网信息技术(北京)股份有限公司 | 一种数据处理方法及装置 |
CN104965722A (zh) * | 2014-07-29 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种显示信息的方法及装置 |
CN104679513A (zh) * | 2015-02-12 | 2015-06-03 | 无锡识凌科技有限公司 | 一种智能终端中的设备驱动架构开发方法 |
CN105141686A (zh) * | 2015-08-19 | 2015-12-09 | 贵阳朗玛信息技术股份有限公司 | 一种实现蓝牙通信的方法及装置 |
CN105635113A (zh) * | 2015-12-22 | 2016-06-01 | 深圳前海微众银行股份有限公司 | 基于sdk的远程业务办理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107643954A (zh) | 2018-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7904421B2 (en) | Transparent virtual machine for mobile applications | |
EP1851904B1 (en) | Facilitating mobile device awareness of the availability of new or updated server-side applications | |
US7941450B2 (en) | Software, devices and methods facilitating execution of server-side applications at mobile devices | |
US20160306639A1 (en) | Method and apparatus for interactive mobile device guidance | |
US8966508B2 (en) | Method for executing hybrid web application and apparatus therefor | |
US20080016187A1 (en) | Automatic mobile device configuration | |
US20070078925A1 (en) | Porting an interface defining document between mobile device platforms | |
CN111881019B (zh) | 一种用户界面测试方法及装置 | |
CN112416613B (zh) | 一种应用数据处理方法、装置、设备以及介质 | |
US20020120746A1 (en) | Method and system for providing a service | |
CN102622237B (zh) | 一种业务功能流程化的配置方法及系统 | |
CN106230977B (zh) | 一种客户端功能加载方法、系统、客户端和服务端 | |
CN109814863A (zh) | 一种请求返回数据的处理方法、装置、计算机设备及计算机存储介质 | |
CN103945284A (zh) | 信息处理方法和信息处理装置 | |
CN107643954B (zh) | Sdk接入系统和方法 | |
CN108279881B (zh) | 基于深度学习预测部分的跨平台实现架构及方法 | |
CN106775879B (zh) | 基于安卓系统客户端的vr应用免安装方法及其系统 | |
CN114530148A (zh) | 一种控制方法、装置及电子设备 | |
CN112328330A (zh) | iOS组件的调用方法、装置、中间件、电子设备及介质 | |
KR101254756B1 (ko) | 복수의 운영체제와 호환 가능한 가상머신 생성 방법 및 가상머신 프로그램을 저장한 기록매체 | |
CN110865864A (zh) | 快应用的界面显示方法、装置、设备及存储介质 | |
CN107643952B (zh) | 本地类库调用方法和装置 | |
CA2593877C (en) | Automatic mobile device configuration | |
CN111240679B (zh) | 页面开发方法及系统 | |
CN112817688B (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 |