Gradle-复制资源文件夹作为installDebug和assembleRelease的一部分

时间:2019-01-17 07:43:27

标签: react-native gradle

我正在为Android构建一个本机反应项目,并且尝试复制资源文件夹,但是我对Gradle还是很陌生,我不太了解在哪里调用我的任务。

我在根目录./html中有一个文件夹,我想将其复制到./android/app/src/main/assets/。我需要在两种情况下(我知道)发生这种情况:

react-native run-android (this invokes the installDebug task)
cd android && ./gradlew assembleRelease

我已经定义了这样的任务:

android {
  ...
  applicationVariants.all { variant ->
    ...
    variant.mergeResources.doLast {
      copy {
        from ("../../html")
        into ("src/main/assets/html")
      }
    }
  }
}

但是仅当我运行cd android && ./gradelw assembleRelease时才会调用它,而当我运行react-native run-android时则不会调用。

我可以定义一个任务:

task copyHtmlAssets(type: Copy, dependsOn: 'installDebug') {
  rom ("../../html")
  into ("src/main/assets/html")
}

这将在我运行react-native run-android时触发,但是我想保持gradle文件干净并更正确地定义任务。

0 个答案:

没有答案