ANDROID开发中渠道包过多时GRADLE过滤处理

本文介绍如何通过variantFilter避免gradle处理大量渠道包导致的启动缓慢问题,通过检查build.type并根据buildFlavor设置打包行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

def local_props = new Properties()
if(file("local.properties").exists())
    file("local.properties").withInputStream { local_props.load(it) }

def buildFlavor = local_props.getProperty('build.variantName')


有些公司App需要大力推广,所以会要求打大量的渠道包,这样gradle文件里面会产生一堆配置,

如果不进行处理每次打开项目会非常慢,AS会花大量的时间去处理这些渠道包,

为了避免这个问题,只需要在variantFilter进行一些过滤配置就行了,大致如下:

 android.variantFilter { variant ->
        def buildTypeName = variant.buildType.name
         // 过滤打包类型 release还是debug
        Boolean is_target_type = buildTypeName.equals('debug') || buildTypeName.equals('release') 
        if(buildFlavor && is_target_type){
           variant.setIgnore(false)
        }else{
          // 其他包直接忽略
           variant.setIgnore(true)
        }
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值