[发明专利]一种资源编译方法及装置有效
申请号: | 201710197894.1 | 申请日: | 2017-03-29 |
公开(公告)号: | CN107368292B | 公开(公告)日: | 2020-06-12 |
发明(设计)人: | 黄咏 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30 |
代理公司: | 北京晋德允升知识产权代理有限公司 11623 | 代理人: | 吴绍群 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 资源 编译 方法 装置 | ||
本申请实施例公开了一种资源编译方法及装置。所述方法包括:对工程进行全量资源编译,获得所述工程的各模块的资源索引类文件,以及确定各资源与资源标识的对应关系,所述资源索引类文件包含从资源标识到对应资源的索引;在所述工程发生资源变更后,根据所述对应关系,对变更的资源进行编译,得到所述资源变更后的工程全量的资源索引类文件;对所述各模块的资源索引类文件中,所述变更的资源所属模块的资源索引类文件进行处理,以使处理后的资源索引类文件中的类继承所述全量的资源索引类文件中的对应类。利用本申请实施例,在工程进行一次全量资源编译后,即使再有新增的资源,也无需再一次进行全量资源编译,可以提高工程构建效率。
技术领域
本申请涉及计算机软件技术领域,尤其涉及一种资源编译方法及装置。
背景技术
随着Android平台体系的逐渐完善,各家服务商的应用也变得越来越庞大,编译时间也随之越来越长,Android平台上的编译包括资源编译与Java编译。
在现有技术中,Google官方推出了Instant Run方案,而Facebook也推出了自己的构建系统Buck,来解决编译速度慢的问题。
但是,上述现有技术在编译期工程有资源新增的情况下存在缺陷。具体地,每次工程有新增的资源后,都需要重新进行全量资源编译,降低了工程构建效率。
发明内容
本申请实施例提供一种资源编译方法及装置,用以解决现有技术中的如下技术问题:在编译期每次工程有新增的资源后,都需要重新进行全量资源编译,降低了工程构建效率。
为解决上述技术问题,本申请实施例是这样实现的:
本申请实施例提供的一种资源编译方法,包括:
对工程进行全量资源编译,获得所述工程的各模块的资源索引类文件,以及确定各资源与资源标识的对应关系,所述资源索引类文件包含从资源标识到对应资源的索引;
在所述工程发生资源变更后,根据所述对应关系,对变更的资源进行编译,得到所述资源变更后的工程全量的资源索引类文件;
对所述各模块的资源索引类文件中,所述变更的资源所属模块的资源索引类文件进行处理,以使处理后的资源索引类文件中的类继承所述全量的资源索引类文件中的对应类。
本申请实施例提供的一种资源编译装置,包括:
第一编译模块,对工程进行全量资源编译,获得所述工程的各模块的资源索引类文件,以及确定各资源与资源标识的对应关系,所述资源索引类文件包含从资源标识到对应资源的索引;
第二编译模块,在所述工程发生资源变更后,根据所述对应关系,对变更的资源进行编译,得到所述资源变更后的工程全量的资源索引类文件;
处理模块,对所述各模块的资源索引类文件中,所述变更的资源所属模块的资源索引类文件进行处理,以使处理后的资源索引类文件中的类继承所述全量的资源索引类文件中的对应类。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:在工程进行一次全量资源编译后,即使再有新增的资源,也无需再一次进行全量资源编译,可以提高工程构建效率,因此,可以部分或全部地解决现有技术中的问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种资源编译方法的流程示意图;
图2为本申请实施例提供的对应于图1的一种资源编译装置的结构示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710197894.1/2.html,转载请声明来源钻瓜专利网。