System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于应用程序开发,尤其涉及一种应用程序安装包的打包方法和装置。
技术介绍
1、通常,一个应用程序的安装包可以具有多个功能模块,不同安装包的多个功能模块往往有所差异。其中,同一安装包的多个功能模块之间可以具有依赖关系。若功能模块之间具有依赖关系,则在缺少依赖模块的情况下,程序无法编译通过。因此,如何实现安装包的差异化打包至关重要。
2、现有技术中,为了实现差异化打包,可以手动更改配置以去掉不需要的功能模块,同时需要修改代码使编译通过。另外,还可以先将工程下的所有功能模块全量打包,再通过控制字段开关控制功能的开启和关闭实现安装包的差异化打包。
3、但是,人工手动更改配置和代码的成本较高。而上述全量打包的方式导致安装包的体积较大,且由于将功能源码全部打包,导致暴露功能源码的风险较高。
技术实现思路
1、本申请实施例提供了一种应用程序安装包的打包方法、装置、设备、存储介质及车辆,无需用户手动修改配置和代码,即可实现安装包的差异化打包,能够降低维护成本。并且,能够减小安装包的体积,减小源码暴露的风险,提升用户对安装包的使用体验。
2、第一方面,本申请实施例提供了一种应用程序安装包的打包方法,该方法包括:
3、接收前端界面发送的配置文件,所述配置文件包括用户选择的目标功能对应的信息;
4、读取所述配置文件,确定与所述目标功能对应的目标功能模块以及与所述目标功能模块对应的目标接口层;
5、获取所述目标功能模块依赖的第一
6、打包所述目标功能模块、所述目标接口层和所述第一接口层,得到应用程序的安装包。
7、在一种可能的实现方式中,在接收前端界面发送的配置文件之前,所述方法还包括:
8、在所述前端界面中展示所述功能列表,所述功能列表中包括多个功能;
9、接收所述用户从所述功能列表中选择目标功能的第一输入;
10、响应于所述第一输入,将所述目标功能的开关状态配置为开启状态;
11、根据所述开关状态的配置结果生成配置文件。
12、在一种可能的实现方式中,所述读取所述配置文件,确定与所述目标功能对应的目标功能模块,包括:
13、读取所述配置文件中各功能的开关状态;
14、查找所述开关状态为开启状态的功能;
15、将所述开关状态为开启状态的功能确定为目标功能;
16、确定与所述目标功能对应的功能模块为目标功能模块。
17、在一种可能的实现方式中,在确定与所述目标功能模块对应的目标接口层之前,所述方法还包括:
18、获取原目标功能模块;
19、从所述原目标功能模块中抽离接口层,得到目标功能模块和目标接口层;
20、建立所述目标功能模块与所述目标接口层之间的对应关系;
21、所述确定与所述目标功能模块对应的目标接口层,包括:
22、根据所述目标功能模块与所述目标接口层之间的对应关系确定与所述目标功能模块对应的目标接口层。
23、在一种可能的实现方式中,所述获取所述目标功能模块依赖的第一接口层,包括:
24、获取所述目标功能模块依赖的第一功能模块;
25、确定与所述第一功能模块对应的第一接口层,得到所述目标功能模块依赖的第一接口层。
26、在一种可能的实现方式中,在确定与所述第一功能模块对应的第一接口层之前,所述方法还包括:
27、获取原第一功能模块;
28、从所述原第一功能模块中抽离接口层,得到第一功能模块和第一接口层;
29、建立所述第一功能模块与所述第一接口层之间的对应关系;
30、所述确定与所述第一功能模块对应的第一接口层,包括:
31、根据所述第一功能模块与所述第一接口层之间的对应关系确定与所述第一功能模块对应的第一接口层。
32、在一种可能的实现方式中,所述方法还包括:
33、向所述目标接口层注入所述目标功能,以使所述应用程序实现所述目标功能。
34、第二方面,本申请实施例提供了一种应用程序安装包的打包装置,该装置包括:
35、第一接收模块,用于接收前端界面发送的配置文件,所述配置文件包括用户选择的目标功能对应的信息;
36、读取模块,用于读取所述配置文件,确定与所述目标功能对应的目标功能模块以及与所述目标功能模块对应的目标接口层;
37、第一获取模块,用于获取所述目标功能模块依赖的第一接口层;
38、打包模块,用于打包所述目标功能模块、所述目标接口层和所述第一接口层,得到应用程序的安装包。
39、第三方面,本申请实施例提供了一种电子设备,该电子设备包括:处理器以及存储有计算机程序指令的存储器;
40、所述处理器执行所述计算机程序指令时实现上述第一方面中任一种可能的实现方法中的方法。
41、第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现上述第一方面中任一种可能的实现方法中的方法。
42、第五方面,本申请实施例提供了一种车辆,该车辆包括以下至少一项:
43、如第二方面的任一项实施例中的应用程序安装包的打包装置;
44、如第三方面的任一项实施例中的电子设备;
45、如第四方面的任一项实施例中的计算机可读存储介质。
46、本申请实施例的应用程序安装包的打包方法、装置、设备、存储介质及车辆,通过接收以及读取前端界面发送的配置文件,能够确定用户选择的目标功能。通过确定与目标功能对应的目标功能模块以及与目标功能模块对应的目标接口层,以及将目标功能模块和目标接口层打包至应用程序的安装包,使安装包能够具备目标功能。通过获取目标功能模块依赖的第一接口层,无需用户手动修改代码,即可使代码编译通过。由于接口层所占的容量远远小于功能模块所占的容量,因此,通过将第一接口层至安装包,能够减小安装包的体积。由于未将目标功能模块的依赖模块打包至安装包,因此,能够减小源码暴露的风险。如此,通过本申请实施例,无需用户手动修改配置和代码,即可实现安装包的差异化打包,能够降低维护成本。并且,能够减小安装包的体积,减小源码暴露的风险,提升用户对安装包的使用体验。
本文档来自技高网...【技术保护点】
1.一种应用程序安装包的打包方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在接收前端界面发送的配置文件之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述读取所述配置文件,确定与所述目标功能对应的目标功能模块,包括:
4.根据权利要求1所述的方法,其特征在于,在确定与所述目标功能模块对应的目标接口层之前,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述获取所述目标功能模块依赖的第一接口层,包括:
6.根据权利要求5所述的方法,其特征在于,在确定与所述第一功能模块对应的第一接口层之前,所述方法还包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.一种应用程序安装包的打包装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,所述电子设备包括:处理器以及存储有计算机程序指令的存储器;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理
11.一种车辆,其特征在于,包括至少以下一种:
...【技术特征摘要】
1.一种应用程序安装包的打包方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在接收前端界面发送的配置文件之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述读取所述配置文件,确定与所述目标功能对应的目标功能模块,包括:
4.根据权利要求1所述的方法,其特征在于,在确定与所述目标功能模块对应的目标接口层之前,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述获取所述目标功能模块依赖的第一接口层,包括:
6.根据权利要求5所述的方法,其特征在于,在确...
【专利技术属性】
技术研发人员:高攀,
申请(专利权)人:北京罗克维尔斯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。