我正在为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文件干净并更正确地定义任务。