gpt4 book ai didi

带有 shell 脚本的 Android studio gradle 自定义任务在构建时不起作用

转载 作者:行者123 更新时间:2023-11-29 23:06:11 27 4
gpt4 key购买 nike

我已经加密了一个文件(API key 、密码等),添加到代码库中。我需要添加一个自定义任务(task encIt)来解密文件(将调用 decrypt.sh 来解密)。这个任务被添加到 build.gradle 文件中。

我已经通过从终端调用“gradle encIt”对此进行了测试,它工作正常(按预期解密文件),但我需要在每次构建 gradle 时都发生这种情况;怎么做?

这是任务:

     task encIt(type:Exec) {
println("WORKING")
commandLine "./decrypt.sh"
println("WORKING")
}

这是脚本文件:

   #!/usr/bin/env sh
echo "inside working"
openssl enc -aes-256-cbc -d -in ../encrypted.key -out key.txt -pass pass:Abcdk5551
echo "inside working"

我测试过

senario 1:gradle encIt

 result : WORKING
inside working
inside working
WORKING
The file is decrypted

senario 1:gradle/gradlew(无参数)

 result : WORKING
WORKING
The file is not getting decrypted

请帮忙!

使用 gradle 版本 5.4.1苹果电脑专业版安卓工作室 3.4.1

最佳答案

编辑app/build.gradle,添加以下代码

task encIt(type:Exec) {
println("WORKING")
commandLine "./decrypt.sh"
println("WORKING")
}

afterEvaluate {
assembleDebug.dependsOn encIt
assembleRelease.dependsOn encIt
}

它适用于:

  1. 点击Android Studio中的run按钮
  2. 运行./gradlew build
  3. 运行./gradlew assemble
  4. 运行./gradlew assembleDebug
  5. 运行./gradlew assembleRelease

关于带有 shell 脚本的 Android studio gradle 自定义任务在构建时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56494841/

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