软件开发工具包的插件化处理方法、装置及电子设备制造方法及图纸

技术编号:28558145 阅读:45 留言:0更新日期:2021-05-25 17:52
本申请公开了一种插件化的软件开发工具包的插件化处理方法、调用方法、装置、电子设备、存储介质、程序产品、以及终端设备,涉及计算机技术中的云计算和芯片。具体实现方案为:根据配置文件确定待处理的SDK的实现类,并根据实现类和待处理的SDK,生成部署于云端的SDK插件,根据调用信息和待处理的SDK,生成静态SDK,并对静态SDK和预设的插件化框架进行打包处理,得到部署于客户端的客户端总成SDK,SDK插件和客户端总成SDK组成了插件化的SDK,降低了SDK插件化的技术门槛和研发成本,且降低了App集成插件化的SDK的集成难度和研发成本,实现了提高SDK的插件化的通用性的技术效果。

【技术实现步骤摘要】
软件开发工具包的插件化处理方法、装置及电子设备
本申请涉及计算机技术中的云计算和芯片,尤其涉及一种软件开发工具包的插件化处理方法、调用方法、装置、电子设备、存储介质、程序产品、以及终端设备。
技术介绍
随着移动应用技术的快速发展,为了推广产品及服务,会对第三方的开发者提供软件开发工具包(SoftwareDevelopmentKit,SDK),插件化的SDK可以被应用程序(Application,App)调用。在现有技术中,对SDK的插件化方法包括:对SDK内部实现部分功能模块插件化并动态加载。然而,对SDK内部实现部分功能模块插件化的方法对技术能力要求较高,且可能存在通用性偏低和消耗成本偏高的问题。
技术实现思路
本申请提供了一种用于提高SDK插件化的软件开发工具包的插件化处理方法、调用方法、装置、电子设备、存储介质、程序产品、以及终端设备。根据本申请的第一方面,提供了一种软件开发工具包的插件化处理方法,包括:获取待处理的软件开发工具包SDK,并获取所述待处理的SDK的配置文件、以及所述待处理本文档来自技高网...

【技术保护点】
1.一种软件开发工具包的插件化处理方法,包括:/n获取待处理的软件开发工具包SDK,并获取所述待处理的SDK的配置文件、以及所述待处理的SDK对外提供的调用接口的调用信息;/n根据所述配置文件确定所述待处理的SDK的实现类,并根据所述实现类和所述待处理的SDK,生成部署于云端的SDK插件,其中,所述实现类表征实现所述配置文件中每一调用接口所指示的内容;/n根据所述调用信息和所述待处理的SDK,生成静态SDK,并对所述静态SDK和预设的插件化框架进行打包处理,得到部署于客户端的客户端总成SDK;其中,所述SDK插件和所述客户端总成SDK组成了插件化的SDK。/n

【技术特征摘要】
1.一种软件开发工具包的插件化处理方法,包括:
获取待处理的软件开发工具包SDK,并获取所述待处理的SDK的配置文件、以及所述待处理的SDK对外提供的调用接口的调用信息;
根据所述配置文件确定所述待处理的SDK的实现类,并根据所述实现类和所述待处理的SDK,生成部署于云端的SDK插件,其中,所述实现类表征实现所述配置文件中每一调用接口所指示的内容;
根据所述调用信息和所述待处理的SDK,生成静态SDK,并对所述静态SDK和预设的插件化框架进行打包处理,得到部署于客户端的客户端总成SDK;其中,所述SDK插件和所述客户端总成SDK组成了插件化的SDK。


2.根据权利要求1所述的方法,其中,所述配置文件用于指示出所述待处理的SDK所需的各实现类;根据所述配置文件确定所述待处理的SDK的实现类,包括:
根据所述配置文件,确定实现所述配置文件中每一调用接口所指示的内容的实现逻辑;
根据各实现逻辑对所述待处理的SDK进行插入处理,生成与各实现逻辑各自对应的实现类。


3.根据权利要求2所述的方法,其中,根据各实现逻辑对所述待处理的SDK进行插入处理,生成与各实现逻辑各自对应的实现类,包括:
针对每一调用接口所指示的内容的实现逻辑,将每一调用接口所指示的内容的实现逻辑插入至所述待处理的SDK,得到与每一调用接口所指示的内容的实现逻辑对应的实现类。


4.根据权利要求3所述的方法,其中,将每一调用接口所指示的内容的实现逻辑插入至所述待处理的SDK,得到与每一调用接口所指示的内容的实现逻辑对应的实现类,包括:
确定每一调用接口所指示的内容的实现逻辑对应的字节码;
基于每一调用接口所指示的内容的实现逻辑对应的字节码对所述待处理的SDK进行字节码插桩处理,生成与每一调用接口所指示的内容的实现逻辑对应的实现类。


5.根据权利要求4所述的方法,其中,基于每一调用接口所指示的内容的实现逻辑的字节码对所述待处理的SDK进行字节码插桩处理,生成与每一调用接口所指示的内容的实现逻辑对应的实现类,包括:
根据所述配置文件确定每一调用接口所指示的内容的实现逻辑的字节码在所述待处理的SDK的插入位置;
采用预设插桩接口将每一调用接口所指示的内容的实现逻辑的字节码插入至与每一调用接口所指示的内容的实现逻辑的字节码在所述待处理的SDK的插入位置,生成与每一调用接口所指示的内容的实现逻辑对应的实现类。


6.根据权利要求1所述的方法,其中,所述待处理的SDK中包括jar包;根据所述实现类和所述待处理的SDK,生成部署于云端的SDK插件,包括:
将所述实现类插入至所述jar包中,得到新的jar包;
根据新的jar包和所述待处理的SDK,生成所述SDK插件。


7.根据权利要求6所述的方法,其中,所述待处理的SDK中包括动态连接库和进程文件,所述进程文件中包括资源文件;根据新的jar包和所述待处理的SDK,生成所述SDK插件,包括:
将所述新的jar包和所述资源文件打包成应用程序包;
将所述应用程序包、所述动态连接库、以及所述进程文件中除去所述资源文件以外的文件进行打包处理,得到所述SDK插件。


8.根据权利要求1至7中任一项所述的方法,其中,根据所述调用信息,生成静态SDK,包括:
在所述待处理的SDK对外提供的调用接口中插入所述调用信息,得到所述静态SDK。


9.根据权利要求8所述的方法,其中,在所述待处理的SDK对外提供的调用接口中插入所述调用信息,得到所述静态SDK,包括:
确定所述调用信息对应的调用逻辑;
在所述待处理的SDK对外提供的调用接口中插入所述调用逻辑,得到所述静态SDK。


10.根据权利要求9所述的方法,其中,确定所述调用信息对应的调用逻辑,在所述待处理的SDK对外提供的调用接口中插入所述调用逻辑,得到所述静态SDK,包括:
确定调用逻辑对应的代理代码,并基于所述代理代码对所述待处理的SDK对外提供的调用接口进行字节码插桩处理,得到所述静态SDK。


11.一种插件化的软件开发工具包的调用方法,包括:
获取调用请求,其中,所述调用请求指示调用插件化的软件开发工具包SDK,所述插件化的SDK是基于权利要求1-10中任一项所述的方法所生成的,所述插件化的SDK中包括SDK插件和客户端总成SDK;
若根据所述调用请求确定本地不具有所述SDK插件,则运行所述客户端总成SDK中的静态SDK。


12.根据权利要求11所述的方法,还包括:
若根据所述调用请求确定本地具有所述SDK插件,则运行所述SDK插件。


13.根据权利要求11或12所述的方法,其中,所述客户端总成SDK中还包括插件化框架,所述插件化框架用于完成所述静态SDK的初始化。


14.一种软件开发工具包的插件化处理装置,包括:
第一获取单元,用于获取待处理的软件开发工具包SDK,并获取所述待处理的SDK的配置文件、以及所述待处理的SDK对外提供的调用接口的调用信息;
确定单元,用于根据所述配置文件确定所述待处理的SDK的实现类;
第一生成单元,用于根据所述实现类和所述待处理的SDK,生成部署于...

【专利技术属性】
技术研发人员:龚正
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1