【Android Gradle 插件】AndroidSourceSets 配置 ① ( Overlay 重叠包机制 | 使用 sourceSets 配置多个 res 目录 )

Android Plugin DSL Reference 参考文档 :





一、Overlay 重叠包机制



在 " AS项目根目录/app/src/main " 目录下创建一个 " res2 " 目录 , 将该目录也作为资源目录 ,

在这里插入图片描述

res2 目录下创建 values 目录 , 并在其中创建 strings.xml 文件 ,

在这里插入图片描述

strings.xml 文件 内容如下 :

<resources>
    <string name="res2">res2</string>
</resources>

在这里插入图片描述

而 " AS项目根目录/app/src/main/values/strings.xml " 中的内容为 :

<resources>
    <string name="app_name">SVG</string>
</resources>




二、使用 sourceSets 配置多个 res 目录



使用 sourceSets 配置多个 res 目录 , 在 " android # sourceSets " 下配置

    sourceSets {
    
    
        main {
    
    
            res.srcDirs 'src/main/res', 'src/main/res2'
        }
    }

内容 , 完整配置参考 :

android {
    
    

    compileSdkVersion 30
    buildToolsVersion "30.0.3"

    defaultConfig {
    
    
        applicationId "kim.hsl.svg"
        minSdkVersion 18
        targetSdkVersion 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"=
    }

    sourceSets {
    
    
        main {
    
    
            res.srcDirs 'src/main/res', 'src/main/res2'
        }
    }
}

注意 , 配置的 ‘src/main/res’, ‘src/main/res2’ ;两个 res 目录中 , 不能有重复名称的资源 , 否则报错 ;

参考 【错误记录】Android Studio 编译报错 ( Error: Duplicate resources | 使用 sourceSets 配置多个 res 资源不能有重复名称的资源 ) 博客 ;

猜你喜欢

转载自blog.csdn.net/han1202012/article/details/124620556