软件开发工具包的处理方法、装置、设备及存储介质制造方法及图纸

技术编号:37996242 阅读:12 留言:0更新日期:2023-06-30 10:10
本申请公开了一种软件开发工具包的处理方法、装置、设备及存储介质,获取第一版本的SDK的源码文件;识别所述源码文件中所述第一版本相关的全类名;基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名,所述映射表指示所述第一版本相关的全类名与所述第二版本相关的全类名之间的映射关系;将所述源码文件中所述第一版本相关的全类名替换为所述第二版本相关的全类名,以生成第二版本的SDK。本申请实现了SDK版本的自动转换,而几乎不需要用户的手动操作,从而提高了SDK版本转换的效率。SDK版本转换的效率。SDK版本转换的效率。

【技术实现步骤摘要】
软件开发工具包的处理方法、装置、设备及存储介质


[0001]本申请涉及计算机
,具体涉及一种软件开发工具包的处理方法、装置、设备及存储介质。

技术介绍

[0002]对于开发者开发出来的软件开发工具包(Software Development Kit,SDK)而言,它需要支持使用者的各种开发环境。由于开发者开发的SDK适用的版本不一定和使用者适用的开发环境相同,因此通常需要提供不同版本的SDK,以适应使用者的不同开发环境。
[0003]相关技术中,为了转换SDK的版本,通常需要下载Android Studio软件,然后将原来版本的SDK文件导入Android Studio软件,然后通过手动点击Android Studio菜单栏

Refactor

Migrate to AndroidX或Migrate to AppCompat进行转换。
[0004]采用上述方法时,需要手动操作才能转换SDK的版本,而无法自动化操作,因此效率较低。

技术实现思路

[0005]本申请实施例提供了一种软件开发工具包的处理方法、装置、设备及存储介质,能够提高转换SDK的版本的效率。
[0006]第一方面,提供了一种软件开发工具包的处理方法,包括:
[0007]获取第一版本的SDK的源码文件;
[0008]识别所述源码文件中所述第一版本相关的全类名;
[0009]基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名,所述映射表指示所述第一版本相关的全类名与所述第二版本相关的全类名之间的映射关系;
[0010]将所述源码文件中所述第一版本相关的全类名替换为所述第二版本相关的全类名,以生成第二版本的SDK。
[0011]在一些实施方式中,所述映射表包括键值对,所述键值对中的键包括所述第一版本相关的全类名,所述键值对中的值包括与所述键中的所述第一版本相关的全类名对应的第二版本相关的全类名,所述识别所述源码文件中所述第一版本相关的全类名,包括:
[0012]在所述源码文件中的每行源码中查找符合所述映射表中键的内容;
[0013]所述基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名,包括:
[0014]读取所述键值对中与所述键对应的值,以得到与所述第一版本相关的全类名对应的第二版本相关的全类名。
[0015]在一些实施方式中,所述基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名之前,所述方法还包括:
[0016]解析第一文件,得到所述第一版本相关的全类名、所述第二版本相关的全类名以
及所述第一版本相关的全类名与所述第二版本相关的全类名之间的对应关系;
[0017]接收转换类型参数,所述转换类型参数用于指示转换前的SDK的版本与转换后的SDK的版本之间的对应关系;
[0018]响应于识别出所述转换类型参数的取值为第一转换类型,以所述第一版本相关的全类名为键,以所述第二版本相关的全类名为值,生成键值对,所述第一转换类型指示转换前的SDK的版本为所述第一版本且转换后的SDK的版本为所述第二版本;
[0019]将所述键值对保存至所述映射表。
[0020]在一些实施方式中,所述解析第一文件,得到所述第一文件的内容包括:
[0021]对于所述第一文件中标题行之外的每一行,基于分隔符确定所述行中的第一字段以及第二字段;
[0022]从所述第一字段中提取所述第一版本相关的全类名,从所述第二字段中提取所述第二版本相关的全类名。
[0023]在一些实施方式中,所述方法还包括:
[0024]接收打包指令;
[0025]对所述第一版本的SDK进行打包,得到第一压缩文件;
[0026]对所述第二版本的SDK进行打包,得到第二压缩文件。
[0027]在一些实施方式中,所述方法还包括:
[0028]接收备份参数,所述备份参数用于指示是否对所述第一版本的SDK的源码文件进行备份;
[0029]响应于识别出所述备份参数的取值为第一备份参数,对所述第一版本的SDK的源码文件进行备份,所述第一备份参数指示对所述第一版本的SDK的源码文件进行备份。
[0030]在一些实施方式中,所述将所述源码文件中所述第一版本相关的全类名替换为所述第二版本相关的全类名之后,所述方法还包括:
[0031]将所述第一版本相关的全类名、所述第二版本相关的全类名以及所述第一版本相关的全类名与所述第二版本相关的全类名之间的替换关系写入至日志文件。
[0032]在一些实施方式中,所述获取第一版本的SDK的源码文件,包括:
[0033]接收工程目录,所述工程目录为所述第一版本的SDK的源码文件的存储总目录;
[0034]读取所述工程目录下所有文件,得到所述第一版本的SDK的源码文件。
[0035]第二方面,提供一种软件开发工具包的处理装置,包括:
[0036]获取模块,用于获取第一版本的SDK的源码文件;
[0037]识别模块,用于识别所述源码文件中所述第一版本相关的全类名;
[0038]所述获取模块,还用于基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名,所述映射表指示所述第一版本相关的全类名与所述第二版本相关的全类名之间的映射关系;
[0039]替换模块,用于将所述源码文件中所述第一版本相关的全类名替换为所述第二版本相关的全类名,以生成第二版本的SDK。
[0040]在一些实施方式中,所述识别模块,用于在所述源码文件中的每行源码中查找符合所述映射表中键的内容;
[0041]所述获取模块,用于读取所述键值对中与所述键对应的值,以得到与所述第一版
本相关的全类名对应的第二版本相关的全类名。
[0042]在一些实施方式中,所述装置还包括:
[0043]解析模块,用于解析第一文件,得到所述第一版本相关的全类名、所述第二版本相关的全类名以及所述第一版本相关的全类名与所述第二版本相关的全类名之间的对应关系;
[0044]接收模块,用于接收转换类型参数,所述转换类型参数用于指示转换前的SDK的版本与转换后的SDK的版本之间的对应关系;
[0045]生成模块,用于响应于识别出所述转换类型参数的取值为第一转换类型,以所述第一版本相关的全类名为键,以所述第二版本相关的全类名为值,生成键值对,所述第一转换类型指示转换前的SDK的版本为所述第一版本且转换后的SDK的版本为所述第二版本;
[0046]将所述键值对保存至所述映射表。
[0047]在一些实施方式中,所述解析模块,用于对于所述第一文件中标题行之外的每一行,基于分隔符确定所述行中的第一字段以及第二字段;从所述第一字段中提取所述第一版本相关的全类名,从所述第二字段中提取所述第二版本相关的全类名。
[0048]在一些实本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件开发工具包的处理方法,其特征在于,包括:获取第一版本的SDK的源码文件;识别所述源码文件中所述第一版本相关的全类名;基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名,所述映射表指示所述第一版本相关的全类名与所述第二版本相关的全类名之间的映射关系;将所述源码文件中所述第一版本相关的全类名替换为所述第二版本相关的全类名,以生成第二版本的SDK。2.根据权利要求1所述的方法,其特征在于,所述映射表包括键值对,所述键值对中的键包括所述第一版本相关的全类名,所述键值对中的值包括与所述键中的所述第一版本相关的全类名对应的第二版本相关的全类名,所述识别所述源码文件中所述第一版本相关的全类名,包括:在所述源码文件中的每行源码中查找符合所述映射表中键的内容;所述基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名,包括:读取所述键值对中与所述键对应的值,以得到与所述第一版本相关的全类名对应的第二版本相关的全类名。3.根据权利要求1所述的方法,其特征在于,所述基于映射表,获取与所述第一版本相关的全类名对应的第二版本相关的全类名之前,所述方法还包括:解析第一文件,得到所述第一版本相关的全类名、所述第二版本相关的全类名以及所述第一版本相关的全类名与所述第二版本相关的全类名之间的对应关系;接收转换类型参数,所述转换类型参数用于指示转换前的SDK的版本与转换后的SDK的版本之间的对应关系;响应于识别出所述转换类型参数的取值为第一转换类型,以所述第一版本相关的全类名为键,以所述第二版本相关的全类名为值,生成键值对,所述第一转换类型指示转换前的SDK的版本为所述第一版本且转换后的SDK的版本为所述第二版本;将所述键值对保存至所述映射表。4.根据权利要求3所述的方法,其特征在于,所述解析第一文件,得到所述第一文件的内容包括:对于所述第一文件中标题行之外的每一行,基于分隔符确定所述行中的第一字段以及第二字段;从所述第一字段中提取所述第一版本相关的全类名,从所述第二字段中提取所述第二版本相关的全类名。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收打包指令;对所述第一版本的SDK进行打包,得到第一压缩文件;对所述第二版本的SDK进行打包,得到第二压...

【专利技术属性】
技术研发人员:陈冠廷李芳友周明付
申请(专利权)人:上海益世界信息技术集团有限公司
类型:发明
国别省市:

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

1