【技术实现步骤摘要】
插件应用的编译方法、装置及计算机可读存储介质
本专利技术涉及计算机
,具体涉及一种插件应用的编译方法、装置及计算机可读存储介质。
技术介绍
在Android插件化开发中,为了拓展自身功能,插件工程通常会引用某些第三方AAR进行开发,但是如果插件工程中的一些AAR也被宿主应用引用的话,会导致生成的插件程序包在进行插件化运行时,容易出现类文件或者资源文件的依赖冲突。
技术实现思路
本专利技术实施例提供一种插件应用的编译方法、装置及计算机可读存储介质,旨在避免插件化编译生成的插件程序包在运行时出现类文件或者资源文件的依赖冲突。本专利技术实施例提供一种插件应用的编译方法,包括:从目标工程对应的归档文件中确定出目标归档文件;解析所述目标归档文件,得到目标类信息和目标资源文件信息;对所述目标工程对应的归档文件进行资源编译,得到第一编译文件集合,并根据所述目标资源文件信息对所述第一编译文件集合进行过滤处理,得到第二编译文件集合;对所述目标工程对应的归档文件进行代码编译,得到 ...
【技术保护点】
1.一种插件应用的编译方法,其特征在于,包括:/n从目标工程对应的归档文件中确定出目标归档文件;/n解析所述目标归档文件,得到目标类信息和目标资源文件信息;/n对所述目标工程对应的归档文件进行资源编译,得到第一编译文件集合,并根据所述目标资源文件信息对所述第一编译文件集合进行过滤处理,得到第二编译文件集合;/n对所述目标工程对应的归档文件进行代码编译,得到第一类文件集合,并根据所述目标类信息对所述第一类文件集合过滤处理,得到第二类文件集合;/n将所述第二编译文件集合中的资源文件以及所述第二类文件集合中的类文件打包处理,生成所述目标工程的插件程序包。/n
【技术特征摘要】
1.一种插件应用的编译方法,其特征在于,包括:
从目标工程对应的归档文件中确定出目标归档文件;
解析所述目标归档文件,得到目标类信息和目标资源文件信息;
对所述目标工程对应的归档文件进行资源编译,得到第一编译文件集合,并根据所述目标资源文件信息对所述第一编译文件集合进行过滤处理,得到第二编译文件集合;
对所述目标工程对应的归档文件进行代码编译,得到第一类文件集合,并根据所述目标类信息对所述第一类文件集合过滤处理,得到第二类文件集合;
将所述第二编译文件集合中的资源文件以及所述第二类文件集合中的类文件打包处理,生成所述目标工程的插件程序包。
2.如权利要求1所述的插件应用的编译方法,其特征在于,所述从目标工程对应的归档文件中确定出目标归档文件包括:
确定目标工程,从远程仓库中获取所述目标工程对应的归档文件;
遍历所述归档文件,以确定出预设坐标元素项的坐标元素值等于所述预设坐标元素值的归档文件,作为目标归档文件。
3.如权利要求1所述的插件应用的编译方法,其特征在于,所述解析所述目标归档文件,得到目标类信息和目标资源文件信息,包括:
解压所述目标归档文件,得到文件目录;
从所述文件目录中确定出类文件目录,并从所述类文件目录中获取目标类信息;
从所述文件目录中确定出资源文件目录,并从所述资源文件目录中获取目标资源文件信息。
4.如权利要求3所述的插件应用的编译方法,其特征在于,所述从所述文件目录中确定类文件目录,并从所述类文件目录中获取目标类信息,包括:
从所述文件目录中确定类文件目录;
解析所述类文件目录中的类文件,得到所述类文件的包名和类名;
解析所述类文件目录中的信息描述文件,得到资源索引类名称;
将所述包名、类名和资源索引类名称作为所述目标类信息。
5.如权利要求4所述的插件应用的编译方法,其特征在于,所述根据所述目标类信息对所述第一类文件集合过滤处理,得到第二类文件集合,包括:
遍历所述第一类文件集合中的文件;
当访问到的文件为class文件且所述class文件的信息属于所述目标类信息时,将所述class文件删除;
当访问到的文件为jar包且所述jar包中包含有class文件的信息属于所述目标类信息时,将所述jar包删除;
将经过删除操作处理后,所述第一类文件集合中剩余的文件,构成第二类文件集合。
<...
【专利技术属性】
技术研发人员:冯俊,
申请(专利权)人:腾讯音乐娱乐科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。