Android gradle 拉取文件到资产

Android gradle pulling files to assets

Android: 我有一些其他项目共享的文件,喜欢打包在assets/下。

/android/app/src/main/assets/a.xml
/projects/shared/b.xml

如何将a.xml和b.xml都放在apk的assets/下?

您可以将任意目录添加到 Gradle(以及 Gradle 的 Android 插件)查找资产的位置。

例如,当 testing migrations in Room 时,我们使用它来将房间生成的历史模式添加到我们的仪器测试的资产中:

sourceSets {
  androidTest.assets.srcDirs += files("$projectDir/schemas".toString())
}

在这里,我们是说我们要将一个新目录添加到填充 androidTest 源集的资产的目录集中。

同样,您可以执行以下操作:

sourceSets {
  main.assets.srcDirs += ...
}

您必须找到合适的 ... 以将 Gradle 指向您的其他文件所在的位置。

请注意,sourceSets 闭包位于模块 build.gradle 文件的 android 闭包内。