gpt4 book ai didi

android - 在 Android Studio 中进行 gradle 构建时,如何将 Assets 提取到 Assets 目录中?

转载 作者:搜寻专家 更新时间:2023-11-01 08:49:49 24 4
gpt4 key购买 nike

我的 Android 项目有一些 Assets 没有通过源 checkin ,而是通过构建系统下载。我已经想出如何在 gradle 中下载和提取它们,但我似乎在构建过程中做得太晚了,因为它们没有被复制到 apk。

def assetsDir = new File(projectDir, 'src/main/assets')

task extractAssets(type: Exec) {

def wd = assetsDir
def extractDir = 'extractedStuff'

outputs.dir "${wd}/${extractDir}"

workingDir wd
commandLine 'tar', 'xzf', 'assets-to-extract.tgz', extractDir
}

tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn extractAssets
}

我在清理后第一次运行它时,它会将 Assets 提取到 Assets 目录中,但不会将它们包含在我的 apk 中。之后,每当我构建时,它都会将 Assets 包含在 apk 中。我的结论是我应该让我的 extractAssets 任务在构建过程的早期发生(也许在 mergeAssets 之前?)。如果是这样,我应该在哪里添加 dependsOn?

最佳答案

在您的 gradle 文件中,您可以指定在构建之前要执行的任务:

preBuild.dependsOn(extractAssets)

这将在构建之前执行您的“extractAssets”

希望对您有所帮助!

关于android - 在 Android Studio 中进行 gradle 构建时,如何将 Assets 提取到 Assets 目录中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24619671/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com