gradle的library如何配置productFlavors

作者: o动感超人o | 来源:发表于2018-06-13 11:19 被阅读10次

    我的当前配置:
    Gradle Version:4.4
    Android Plugin Version:3.1.2

    如果是application,大家都知道怎么配置productFlavors,但是library就有人不知道了,网上这部分资料比较少,根据本人心得整理如下:

    首先配置library的productFlavors:

    1. 在library中的android标签下的defaultConfig标签下添加以下代码:
    flavorDimensions "dimensionName"
    

    其中dimensionName是高版本gradle中配置productFlavors需要添加的,名字自定义,但是需要在productFlavors中给dimension配置相同的名称,这里我们设置为dimensionName

    2. 在library中的android标签下添加以下代码:
        productFlavors {
            flavorsA { dimension "dimensionName" }
            flavorsB { dimension "dimensionName" }
        }
    

    其中dimensionName是在第1步中配置的名称

    然后说如何使用

    假设我们的application项目Module名称叫做app,在app的build.gradle文件中,添加上面1和2相同步骤的代码,然后在dependencies标签中添加上面library的依赖即可,假如上面library的Module名字叫做myLibrary,在dependencies里这么添加:

    implementation project(':myLibrary')
    

    备注:之前有文章说需要写成类似下面的代码形式

    flavorsAImplementation project(':myLibrary')
    flavorsBImplementation project(':myLibrary')
    

    但是经过本人测试发现并不需要这样,app在依赖myLibrary的时候并不需要在implementation或者api前面加上flavors的名字,而且在切换app的productFlavors的时候myLibrary的productFlavors也可以联动

    相关文章

      网友评论

      • Lmaoshammy:不行哦.升级到你这个版本,我还是编译报错
        o动感超人o:@Lmaoshammy 我也是组件化
        Lmaoshammy:@o动感超人o 解决了,因为组件化的问题。
        o动感超人o:改的是工程目录里的gradle文件夹里的版本吗

      本文标题:gradle的library如何配置productFlavors

      本文链接:https://www.haomeiwen.com/subject/brqjeftx.html