android打包指定java版本,Android实现一套代码打包差异化多版本

实际项目开发过程中,经常会遇到这样的场景:一个项目要根据需要打包成多个存在差异的版本,比如对外版本、对内版本,或者开发版本、测试版本、线上版本等等……并且几个版本的代码是相同,有几个是不同的,那么如何通过维护一套代码的前提下实现打包差异化多版本呢?可以使用productFlavors来实现这样的需求。

1、首先,在build.gradle里添加productFlavors:

android {

...

flavorDimensions "product"

productFlavors {

flavorOne {

applicationId "com.test.app.huawei"

// ...

}

flavorTwo {

applicationId "com.test.app.360"

// ...

}

flavorThree {

// ...

}

flavorFour {

// ...

}

}

}

2、接着,在src目录,根据main目录的结构,新建需要代码差异化的与productFlavors里定义相同名字的文件夹,如flavorOne、flavorTwo。编译时gradle会将main目录自动合并,这样一来,版本flavorOne的代码实质是由flavorOne目录+main目录的代码组成,如果两个目录中有相同的类会报错。

3、最后,在build.gradle里添加下面的代码,让flavorFour和flavorThree使用flavorOne的代码。

android {

...

sourceSets {

flavorFour.java.srcDir 'src/flavorOne/java'

flavorThree.java.srcDir 'src/flavorOne/java'

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值