我需要将一些文本文件打包到一个zip文件中,并将其放在我的Android项目的assets文件夹中。我正在使用gradle和android工作室。我现在的build.gradle就是这样的:
task textsToZip(type: Zip, description: 'create a zip files with all txts') {
destinationDir file("$buildDir/txts")
baseName 'txts'
extension 'zip'
from fileTree(dir: 'text-files', include: '**/*.txt')
into 'assets'
}
android.applicationVariants.all { variant ->
variant.mergeAssets.dependsOn(textsToZip)
}这似乎不起作用,我没有把txts.zip放在正确的位置。我对gradle很陌生,有人能给我一个提示吗?我做错了什么?谢谢!
发布于 2014-09-16 10:53:03
好吧,最后我想通了。我为每个变体创建了一个任务,这样:
android.applicationVariants.all { variant ->
def zipTask = project.tasks.create "textsToZip${variant.name.capitalize()}", Zip
zipTask.destinationDir = file(variant.processResources.assetsDir)
zipTask.baseName = "txts"
zipTask.extension = "zip"
zipTask.from fileTree(dir: 'text-files', include: '**/*.txt')
variant.processResources.dependsOn(zipTask)
}我不知道这是不是最好的方法,但它对我有效,我觉得它也相当优雅。
https://stackoverflow.com/questions/25862155
复制相似问题